/* * Copyright The OpenTelemetry Authors * SPDX-License-Identifier: Apache-2.0 */ /* * DO NOT EDIT, this is an Auto-generated file from: * buildscripts/semantic-convention/templates/registry/semantic_attributes-h.j2 */ #pragma once #include "opentelemetry/common/macros.h" #include "opentelemetry/version.h" OPENTELEMETRY_BEGIN_NAMESPACE namespace semconv { namespace faas { /** A boolean that is true if the serverless function is executed for the first time (aka cold-start). */ static constexpr const char *kFaasColdstart = "faas.coldstart"; /** A string containing the schedule period as Cron Expression. */ static constexpr const char *kFaasCron = "faas.cron"; /** The name of the source on which the triggering operation was performed. For example, in Cloud Storage or S3 corresponds to the bucket name, and in Cosmos DB to the database name. */ static constexpr const char *kFaasDocumentCollection = "faas.document.collection"; /** The document name/table subjected to the operation. For example, in Cloud Storage or S3 is the name of the file, and in Cosmos DB the table name. */ static constexpr const char *kFaasDocumentName = "faas.document.name"; /** Describes the type of the operation that was performed on the data. */ static constexpr const char *kFaasDocumentOperation = "faas.document.operation"; /** A string containing the time when the data was accessed in the ISO 8601 format expressed in UTC. */ static constexpr const char *kFaasDocumentTime = "faas.document.time"; /** The execution environment ID as a string, that will be potentially reused for other invocations to the same function/function version. */ static constexpr const char *kFaasInstance = "faas.instance"; /** The invocation ID of the current function invocation. */ static constexpr const char *kFaasInvocationId = "faas.invocation_id"; /** The name of the invoked function.

SHOULD be equal to the @code faas.name @endcode resource attribute of the invoked function. */ static constexpr const char *kFaasInvokedName = "faas.invoked_name"; /** The cloud provider of the invoked function.

SHOULD be equal to the @code cloud.provider @endcode resource attribute of the invoked function. */ static constexpr const char *kFaasInvokedProvider = "faas.invoked_provider"; /** The cloud region of the invoked function.

SHOULD be equal to the @code cloud.region @endcode resource attribute of the invoked function. */ static constexpr const char *kFaasInvokedRegion = "faas.invoked_region"; /** The amount of memory available to the serverless function converted to Bytes.

It's recommended to set this attribute since e.g. too little memory can easily stop a Java AWS Lambda function from working correctly. On AWS Lambda, the environment variable @code AWS_LAMBDA_FUNCTION_MEMORY_SIZE @endcode provides this information (which must be multiplied by 1,048,576). */ static constexpr const char *kFaasMaxMemory = "faas.max_memory"; /** The name of the single function that this runtime instance executes.

This is the name of the function as configured/deployed on the FaaS platform and is usually different from the name of the callback function (which may be stored in the @code code.namespace @endcode/@code code.function.name @endcode span attributes).

For some cloud providers, the above definition is ambiguous. The following definition of function name MUST be used for this attribute (and consequently the span name) for the listed cloud providers/products:

*/ static constexpr const char *kFaasName = "faas.name"; /** A string containing the function invocation time in the ISO 8601 format expressed in UTC. */ static constexpr const char *kFaasTime = "faas.time"; /** Type of the trigger which caused this function invocation. */ static constexpr const char *kFaasTrigger = "faas.trigger"; /** The immutable version of the function being executed.

Depending on the cloud provider and platform, use:

*/ static constexpr const char *kFaasVersion = "faas.version"; namespace FaasDocumentOperationValues { /** When a new object is created. */ static constexpr const char *kInsert = "insert"; /** When an object is modified. */ static constexpr const char *kEdit = "edit"; /** When an object is deleted. */ static constexpr const char *kDelete = "delete"; } // namespace FaasDocumentOperationValues namespace FaasInvokedProviderValues { /** Alibaba Cloud */ static constexpr const char *kAlibabaCloud = "alibaba_cloud"; /** Amazon Web Services */ static constexpr const char *kAws = "aws"; /** Microsoft Azure */ static constexpr const char *kAzure = "azure"; /** Google Cloud Platform */ static constexpr const char *kGcp = "gcp"; /** Tencent Cloud */ static constexpr const char *kTencentCloud = "tencent_cloud"; } // namespace FaasInvokedProviderValues namespace FaasTriggerValues { /** A response to some data source operation such as a database or filesystem read/write */ static constexpr const char *kDatasource = "datasource"; /** To provide an answer to an inbound HTTP request */ static constexpr const char *kHttp = "http"; /** A function is set to be executed when messages are sent to a messaging system */ static constexpr const char *kPubsub = "pubsub"; /** A function is scheduled to be executed regularly */ static constexpr const char *kTimer = "timer"; /** If none of the others apply */ static constexpr const char *kOther = "other"; } // namespace FaasTriggerValues } // namespace faas } // namespace semconv OPENTELEMETRY_END_NAMESPACE