다음을 통해 공유


W3CLOGFILE 매핑

W3CLOGFILE 매핑을 사용하여 수집 원본 파일이 W3CLOGFILE 형식일 때 들어오는 데이터를 테이블 내의 열에 매핑합니다.

매핑 목록의 각 요소는 특정 열에 대한 매핑을 정의합니다. 이러한 요소는 , datatypeproperties의 세 가지 column속성에서 생성됩니다. 데이터 매핑 개요에서 자세히 알아보세요.

각 W3CLOGFILE 매핑 요소에는 다음 선택적 속성 중 하나가 포함되어야 합니다.

속성 형식 Description
필드 string W3CLOGFILE 로그 레코드의 필드 이름입니다.
ConstValue string W3CLOGFILE 파일 내의 일부 값 대신 열에 사용할 상수 값입니다.
변환 string 매핑 변환을 사용하여 콘텐츠에 적용해야 하는 변환입니다.

참고

W3CLOGFILE 형식에 지원되는 변환은 SourceLineNumber 및 SourceLocation뿐입니다.

중요

대기 중인 수집의 경우:

  • 매핑에서 참조되는 테이블이 데이터베이스에 없으면 모든 열에 대해 유효한 데이터 형식이 지정되어 있으므로 자동으로 만들어집니다.
  • 매핑에서 참조된 열이 테이블에 없는 경우 열에 대해 유효한 데이터 형식이 지정된 경우 해당 열에 대한 데이터를 처음 수집할 때 마지막 열로 테이블에 자동으로 추가됩니다. 매핑에 새 열을 추가하려면 .alter 수집 매핑 명령을 사용합니다.
  • 데이터는 수집 속성을 사용하여 일괄 처리됩니다. 다른 ConstValue 값과 같이 사용되는 고유 수집 매핑 속성이 많을수록 수집이 조각화되어 성능이 저하될 수 있습니다.

예제

[
   {"Column": "Date",          "Properties": {"Field": "date"}},
   {"Column": "Time",          "Properties": {"Field": "time"}},
   {"Column": "IP",            "Properties": {"Field": "s-ip"}},
   {"Column": "ClientMethod",  "Properties": {"Field": "cs-method"}},
   {"Column": "ClientQuery",   "Properties": {"Field": "cs-uri-query"}},
   {"Column": "ServerPort",    "Properties": {"Field": "s-port"}},
   {"Column": "ClientIP",      "Properties": {"Field": "c-ip"}},
   {"Column": "UserAgent",     "Properties": {"Field": "cs(User-Agent)"}},
   {"Column": "Referer",       "Properties": {"Field": "cs(Referer)"}},
   {"Column": "Status",        "Properties": {"Field": "sc-status"}},
   {"Column": "ResponseBytes", "Properties": {"Field": "sc-bytes"}},
   {"Column": "RequestBytes",  "Properties": {"Field": "cs-bytes"}},
   {"Column": "TimeTaken",     "Properties": {"Field": "time-taken"}}
]

위의 매핑은 관리 명령의 일부로 .ingest 제공될 때 JSON 문자열로 직렬화됩니다.

.ingest into Table123 (@"source1", @"source2")
  with
  (
      format = "w3clogfile",
      ingestionMapping =
      ```
      [
         {"Column": "column_a", "Properties": {"Field": "field1"}},
         {"Column": "column_b", "Properties": {"Field": "field2"}}
      ]
      ```
  )

미리 만든 매핑

매핑이 미리 만들어지면 관리 명령에서 이름으로 매핑을 .ingest 참조합니다.

.ingest into Table123 (@"source1", @"source2")
    with
    (
        format="w3clogfile",
        ingestionMappingReference = "Mapping_Name"
    )

ID 매핑

매핑 스키마를 정의하지 않고 수집하는 동안 W3CLOGFILE 매핑을 사용합니다( ID 매핑 참조).

.ingest into Table123 (@"source1", @"source2")
    with
    (
        format="w3clogfile"
    )