Gerar subsegmentos personalizados com o X-Ray SDK para Go - AWS X-Ray

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Gerar subsegmentos personalizados com o X-Ray SDK para Go

nota

End-of-support aviso — Em 25 de fevereiro de 2027, o AWS X-Ray interromperá o suporte para AWS X-Ray SDKs o daemon. Depois de 25 de fevereiro de 2027, você não receberá mais atualizações ou lançamentos. Para obter mais informações sobre o cronograma de suporte, consulteCronograma de fim do suporte do X-Ray SDK e do daemon. Recomendamos migrar para o. OpenTelemetry Para obter mais informações sobre a migração para OpenTelemetry, consulte Migrando da instrumentação X-Ray para a instrumentação. OpenTelemetry

Os subsegmentos estendem o segmento de um rastreamento com detalhes sobre o trabalho realizado para atender a uma solicitação. Sempre que você faz uma chamada com um cliente instrumentado, o X-Ray SDK registra as informações geradas em um subsegmento. Você pode criar subsegmentos adicionais para agrupar outros subsegmentos, medir o desempenho de uma seção do código ou registrar anotações e metadados.

Use o método Capture para criar um subsegmento em torno de uma função.

exemplo main.go: subsegmento personalizado
func criticalSection(ctx context.Context) { //this is an example of a subsegment xray.Capture(ctx, "GameModel.saveGame", func(ctx1 context.Context) error { var err error section.Lock() result := someLockedResource.Go() section.Unlock() xray.AddMetadata(ctx1, "ResourceResult", result) })

A captura de tela a seguir mostra um exemplo de como o subsegmento saveGame pode aparecer em rastreamentos do aplicativo Scorekeep.

Trace timeline showing Scorekeep application segments, including DynamoDB operations and GameModel saveGame subsegment.