// Copyright The OpenTelemetry Authors // SPDX-License-Identifier: Apache-2.0 package telemetry // import "go.opentelemetry.io/otel/trace/internal/telemetry" // StatusCode is the status of a Span. // // For the semantics of status codes see // https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/api.md#set-status type StatusCode int32 const ( // StatusCodeUnset is the default status. StatusCodeUnset StatusCode = 0 // StatusCodeOK is used when the Span has been validated by an Application // developer or Operator to have completed successfully. StatusCodeOK StatusCode = 1 // StatusCodeError is used when the Span contains an error. StatusCodeError StatusCode = 2 ) var statusCodeStrings = []string{ "Unset", "OK", "Error", } func (s StatusCode) String() string { if s >= 0 && int(s) < len(statusCodeStrings) { return statusCodeStrings[s] } return "" } // Status defines a logical error model that is suitable for different // programming environments, including REST APIs and RPC APIs. type Status struct { // A developer-facing human readable error message. Message string `json:"message,omitempty"` // The status code. Code StatusCode `json:"code,omitempty"` }