.NET용 X-Ray SDK로 세그먼트에 주석 및 메타데이터 추가하기 - AWS X-Ray

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

.NET용 X-Ray SDK로 세그먼트에 주석 및 메타데이터 추가하기

주석과 메타데이터를 사용하여 요청, 환경 또는 애플리케이션에 대한 추가 정보를 기록할 수 있습니다. X-Ray SDK에서 생성하는 세그먼트 또는 사용자가 생성하는 사용자 지정 하위 세그먼트에 주석 및 메타데이터를 추가할 수 있습니다.

주석은 문자열, 숫자 또는 부울 값과 결합한 키-값 페어입니다. 주석은 필터 표현식에서 사용하기 위해 인덱싱됩니다. 주석은 콘솔의 트레이스를 그룹화할 때 사용할 데이터를 기록하거나 GetTraceSummaries API를 호출할 때 사용하십시오.

메타데이터는 객체 및 목록을 포함한 모든 유형의 값을 가질 수 있는 키-값 페어지만, 필터 표현식에 사용할 수 있도록 인덱싱되지는 않습니다. 트레이스에 저장하고 싶지만 검색에는 사용하지 않을 추가 데이터는 메타데이터를 사용하여 기록하십시오.

.NET용 X-Ray SDK로 주석 기록하기

주석을 사용하여 검색용으로 인덱싱할 정보를 세그먼트나 하위 세그먼트에 기록하십시오.

X-Ray의 모든 주석에는 다음이 필요합니다.

주석 요구 사항
  • — X-Ray 주석의 키는 최대 500자의 영숫자를 포함할 수 있습니다. 밑줄 기호 (_) 이외의 공백이나 기호는 사용할 수 없습니다.

  • — X-Ray 주석의 값은 최대 1,000개의 유니코드 문자를 포함할 수 있습니다.

  • 주석 수 — 트레이스당 최대 50개의 주석을 사용할 수 있습니다.

함수 외부에 주석을 기록하려면 AWS Lambda
  1. AWSXRayRecorder의 인스턴스를 생성합니다.

    using Amazon.XRay.Recorder.Core; ... AWSXRayRecorder recorder = AWSXRayRecorder.Instance;
  2. 문자열 키와 부울, Int32, Int64, Double 또는 문자열 값으로 addAnnotation을 호출합니다.

    recorder.AddAnnotation("mykey", "my value");
함수 내부에 주석을 기록하려면 AWS Lambda

Lambda 함수 내의 세그먼트와 하위 세그먼트 모두 Lambda 런타임 환경에서 관리됩니다. Lambda 함수 내의 세그먼트 또는 하위 세그먼트에 주석을 추가하려면 다음을 수행해야 합니다.

  1. Lambda 함수 내에 세그먼트 또는 하위 세그먼트를 생성합니다.

  2. 세그먼트나 하위 세그먼트에 주석을 추가합니다.

  3. 세그먼트나 하위 세그먼트를 종료합니다.

다음 코드 예제는 Lambda 함수 내의 하위 세그먼트에 주석을 추가하는 방법을 보여줍니다.

#Create the subsegment AWSXRayRecorder.Instance.BeginSubsegment("custom method"); #Add an annotation AWSXRayRecorder.Instance.AddAnnotation("My", "Annotation"); try { YourProcess(); #Your function } catch (Exception e) { AWSXRayRecorder.Instance.AddException(e); } finally #End the subsegment { AWSXRayRecorder.Instance.EndSubsegment(); }

X-Ray SDK는 주석을 세그먼트 문서의 annotations 개체에 키-값 쌍으로 기록합니다. 동일한 키로 addAnnotation 작업을 두 번 호출하면 동일한 세그먼트 또는 하위 세그먼트에 이전에 기록된 값을 덮어씁니다.

특정 값을 포함한 주석이 있는 트레이스를 찾으려면 annotations.key 키워드를 필터 표현식에 사용하십시오.

.NET용 X-Ray SDK로 메타데이터 기록하기

메타데이터를 사용하면 검색에 사용하기 위해 인덱싱할 필요가 없는 세그먼트나 하위 세그먼트에 대한 정보를 기록할 수 있습니다. 메타데이터 값은 문자열, 숫자, 부울 또는 JSON 객체 또는 배열로 직렬화할 수 있는 기타 객체일 수 있습니다.

메타데이터 기록 방법
  1. 다음 코드 예제와 AWSXRayRecorder 같이 의 인스턴스를 가져옵니다.

    using Amazon.XRay.Recorder.Core; ... AWSXRayRecorder recorder = AWSXRayRecorder.Instance;
  2. 다음 코드 AddMetadata 예제와 같이 문자열 네임스페이스, 문자열 키, 개체 값을 사용하여 호출합니다.

    recorder.AddMetadata("my namespace", "my key", "my value");

    다음 코드 예제와 같이 키와 값 쌍만 사용하여 AddMetadata 작업을 호출할 수도 있습니다.

    recorder.AddMetadata("my key", "my value");

네임스페이스 값을 지정하지 않으면 X-Ray SDK가 사용합니다. default 동일한 키로 AddMetadata 작업을 두 번 호출하면 동일한 세그먼트 또는 하위 세그먼트에서 이전에 기록된 값을 덮어씁니다.