2011-01-25 3 views
0

이전에 이런 로그 파일 형식을 본 사람이 있습니까? 아니면 이름을 알고 있습니까?XML과 유사한 로그 파일 구문 분석 도구

<Msg time='2010-01-10T17:41:31' type='INFO' attrbute3='value' ... >Log Message</Msg> 

지금 내가 라인 (I)가 필요로하는 정보를 얻을 수있는 루비 스크립트 선으로 파싱하고, 그러나 SQL 틱 쿼리 지원이 있기 때문에 내가 Microsoft Log Parser 같은 것들로보고 있었다.

유일한 문제는 로그 파일의 모든 항목이 많은 최상위 요소가있는 위의 예와 비슷하기 때문에 대부분의 도구는이를 분석하지 않습니다. 그들은 "일반적으로 XML 문서에 최상위 요소가 하나만 허용됩니다."라는 오류 메시지로 불평합니다.

최상위 요소가있는 파일 하나에 모든 것을 하나로 뭉개 버릴 수 있지만, 토끼 구멍을 내려 가기 전에 기존 요소를 재사용하고 싶습니다.

덕분에, 알렉스

+0

이 로그 파일을 어떤 유형의 시스템에서 가져오고 있습니까? – orangepips

+0

이것은 ArcGIS 로그 파일이지만 전에는 최상위 노드가없는 xml 로그 파일을 본 적이 없습니다. 필자가 전에 보았던 대부분의 로그 파일은 공백/쉼표로 구분되어 있거나 XML 인 경우 최상위 요소 하나가 정확하고 어딘가에 xsd가 있습니다. –

답변

1

이것은 ArcGIS Server 로그 파일입니다. 도움말 파일은 help.arcgis.com입니다.

각 dat 파일에는 동일한 이름의 companion xml 파일이 있습니다. XML 파일의 루트 요소를 정의하고 dat 파일을 참조합니다.

xml 파일을 입력으로 전달하면 Log Parser 유틸리티가 작동합니다. 예를 들어, 다음 명령문은 ArcGIS Server 로그의 모든 오류를 csv 파일에 작성합니다.

LogParser -i XML -o CSV "SELECT * INTO errors.csv FROM SERVER-SERVER-20120227-000000.xml#/Log/Msg WHERE type='ERROR'" 
0

나는 내 작은 로그 검색 도구는 너무 XML 도구를 너무 많이 불평없이 그것을 해석 할 수 구문 분석하기 전에 상위 노드를 추가 할 필요 끝났다. 루비를 사용하여 나머지를 구문 분석하고 우리가 필요로하는 것에 대한 통계를 작성합니다.