]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/jaegertracing/opentelemetry-cpp/api/include/opentelemetry/trace/canonical_code.h
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / jaegertracing / opentelemetry-cpp / api / include / opentelemetry / trace / canonical_code.h
diff --git a/ceph/src/jaegertracing/opentelemetry-cpp/api/include/opentelemetry/trace/canonical_code.h b/ceph/src/jaegertracing/opentelemetry-cpp/api/include/opentelemetry/trace/canonical_code.h
new file mode 100644 (file)
index 0000000..fd72289
--- /dev/null
@@ -0,0 +1,141 @@
+// Copyright The OpenTelemetry Authors
+// SPDX-License-Identifier: Apache-2.0
+
+#pragma once
+
+#include <cstdint>
+
+#include "opentelemetry/version.h"
+
+OPENTELEMETRY_BEGIN_NAMESPACE
+namespace trace
+{
+enum class CanonicalCode : uint8_t
+{
+  /**
+   * The operation completed successfully.
+   */
+  OK = 0,
+
+  /**
+   * The operation was cancelled (typically by the caller).
+   */
+  CANCELLED = 1,
+
+  /**
+   * Unknown error. An example of where this error may be returned is if a Status value received
+   * from another address space belongs to an error-space that is not known in this address space.
+   * Also errors raised by APIs that do not return enough error information may be converted to
+   * this error.
+   */
+  UNKNOWN = 2,
+
+  /**
+   * Client specified an invalid argument. Note that this differs from FAILED_PRECONDITION.
+   * INVALID_ARGUMENT indicates arguments that are problematic regardless of the state of the
+   * system (e.g., a malformed file name).
+   */
+  INVALID_ARGUMENT = 3,
+
+  /**
+   * Deadline expired before operation could complete. For operations that change the state of the
+   * system, this error may be returned even if the operation has completed successfully. For
+   * example, a successful response from a server could have been delayed long enough for the
+   * deadline to expire.
+   */
+  DEADLINE_EXCEEDED = 4,
+
+  /**
+   * Some requested entity (e.g., file or directory) was not found.
+   */
+  NOT_FOUND = 5,
+
+  /**
+   * Some entity that we attempted to create (e.g., file or directory) already exists.
+   */
+  ALREADY_EXISTS = 6,
+
+  /**
+   * The caller does not have permission to execute the specified operation. PERMISSION_DENIED
+   * must not be used for rejections caused by exhausting some resource (use RESOURCE_EXHAUSTED
+   * instead for those errors). PERMISSION_DENIED must not be used if the caller cannot be
+   * identified (use UNAUTHENTICATED instead for those errors).
+   */
+  PERMISSION_DENIED = 7,
+
+  /**
+   * Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system
+   * is out of space.
+   */
+  RESOURCE_EXHAUSTED = 8,
+
+  /**
+   * Operation was rejected because the system is not in a state required for the operation's
+   * execution. For example, directory to be deleted may be non-empty, an rmdir operation is
+   * applied to a non-directory, etc.
+   *
+   * A litmus test that may help a service implementor in deciding between FAILED_PRECONDITION,
+   * ABORTED, and UNAVAILABLE: (a) Use UNAVAILABLE if the client can retry just the failing call.
+   * (b) Use ABORTED if the client should retry at a higher-level (e.g., restarting a
+   * read-modify-write sequence). (c) Use FAILED_PRECONDITION if the client should not retry until
+   * the system state has been explicitly fixed. E.g., if an "rmdir" fails because the directory
+   * is non-empty, FAILED_PRECONDITION should be returned since the client should not retry unless
+   * they have first fixed up the directory by deleting files from it.
+   */
+  FAILED_PRECONDITION = 9,
+
+  /**
+   * The operation was aborted, typically due to a concurrency issue like sequencer check
+   * failures, transaction aborts, etc.
+   *
+   * See litmus test above for deciding between FAILED_PRECONDITION, ABORTED, and UNAVAILABLE.
+   */
+  ABORTED = 10,
+
+  /**
+   * Operation was attempted past the valid range. E.g., seeking or reading past end of file.
+   *
+   * Unlike INVALID_ARGUMENT, this error indicates a problem that may be fixed if the system
+   * state changes. For example, a 32-bit file system will generate INVALID_ARGUMENT if asked to
+   * read at an offset that is not in the range [0,2^32-1], but it will generate OUT_OF_RANGE if
+   * asked to read from an offset past the current file size.
+   *
+   * There is a fair bit of overlap between FAILED_PRECONDITION and OUT_OF_RANGE. We recommend
+   * using OUT_OF_RANGE (the more specific error) when it applies so that callers who are
+   * iterating through a space can easily look for an OUT_OF_RANGE error to detect when they are
+   * done.
+   */
+  OUT_OF_RANGE = 11,
+
+  /**
+   * Operation is not implemented or not supported/enabled in this service.
+   */
+  UNIMPLEMENTED = 12,
+
+  /**
+   * Internal errors. Means some invariants expected by underlying system has been broken. If you
+   * see one of these errors, something is very broken.
+   */
+  INTERNAL = 13,
+
+  /**
+   * The service is currently unavailable. This is a most likely a transient condition and may be
+   * corrected by retrying with a backoff.
+   *
+   * See litmus test above for deciding between FAILED_PRECONDITION, ABORTED, and UNAVAILABLE.
+   */
+  UNAVAILABLE = 14,
+
+  /**
+   * Unrecoverable data loss or corruption.
+   */
+  DATA_LOSS = 15,
+
+  /**
+   * The request does not have valid authentication credentials for the operation.
+   */
+  UNAUTHENTICATED = 16,
+};
+
+}  // namespace trace
+OPENTELEMETRY_END_NAMESPACE