Copyright The OpenTelemetry Authors Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Package codes defines the canonical error codes used by OpenTelemetry. It conforms to [the OpenTelemetry specification](https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/trace/api.md#statuscanonicalcode). This also means that it follows gRPC codes and is based on [google.golang.org/grpc/codes](https://godoc.org/google.golang.org/grpc/codes). This package was added to this project, instead of using that existing package, to avoid the large package size it includes and not impose that burden on projects using this package.
package codes
Code is an 32-bit representation of a status state.
type Code uint32
WARNING: any changes here must be propagated to the otel/sdk/internal/codes.go file.
OK means success.
Canceled indicates the operation was canceled (typically by the caller).
Unknown error. An example of where this error may be returned is if an error is raised by a dependant API that does not contain enough information to convert it into a more appropriate error.
InvalidArgument indicates a client specified an invalid argument. Note that this differs from FailedPrecondition. InvalidArgument indicates arguments that are problematic regardless of the state of the system.
DeadlineExceeded means a deadline expired before the operation could complete. For operations that change the state of the system, this error may be returned even if the operation has completed successfully.
NotFound means some requested entity (e.g., file or directory) was not found.
AlreadyExists means some entity that we attempted to create (e.g., file or directory) already exists.
PermissionDenied means the caller does not have permission to execute the specified operation. PermissionDenied must not be used if the caller cannot be identified (use Unauthenticated instead for those errors).
ResourceExhausted means some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space.
FailedPrecondition means the operation was rejected because the system is not in a state required for the operation's execution.
Aborted means the operation was aborted, typically due to a concurrency issue like sequencer check failures, transaction aborts, etc.
OutOfRange means the operation was attempted past the valid range. E.g., seeking or reading past end of file. Unlike InvalidArgument, this error indicates a problem that may be fixed if the system state changes.
Unimplemented means the operation is not implemented or not supported/enabled in this service.
Internal means an internal errors. It means some invariants expected by underlying system has been broken.
Unavailable means the service is currently unavailable. This is most likely a transient condition and may be corrected by retrying with a backoff.
DataLoss means unrecoverable data loss or corruption has occurred.
Unauthenticated means the request does not have valid authentication credentials for the operation.