145 lines
5.1 KiB
YAML
145 lines
5.1 KiB
YAML
groups:
|
|
- id: faas_span
|
|
prefix: faas
|
|
type: span
|
|
brief: >
|
|
This semantic convention describes an instance of a function that
|
|
runs without provisioning or managing of servers (also known as
|
|
serverless functions or Function as a Service (FaaS)) with spans.
|
|
attributes:
|
|
- ref: faas.trigger
|
|
note: |
|
|
For the server/consumer span on the incoming side,
|
|
`faas.trigger` MUST be set.
|
|
|
|
Clients invoking FaaS instances usually cannot set `faas.trigger`,
|
|
since they would typically need to look in the payload to determine
|
|
the event type. If clients set it, it should be the same as the
|
|
trigger that corresponding incoming would have (i.e., this has
|
|
nothing to do with the underlying transport used to make the API
|
|
call to invoke the lambda, which is often HTTP).
|
|
- id: invocation_id
|
|
type: string
|
|
brief: 'The invocation ID of the current function invocation.'
|
|
examples: 'af9d5aa4-a685-4c5f-a22b-444f80b3cc28'
|
|
- ref: cloud.resource_id
|
|
|
|
- id: faas_span.datasource
|
|
prefix: faas.document
|
|
type: span
|
|
brief: >
|
|
Semantic Convention for FaaS triggered as a response to some data
|
|
source operation such as a database or filesystem read/write.
|
|
attributes:
|
|
- id: collection
|
|
type: string
|
|
requirement_level: required
|
|
brief: >
|
|
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.
|
|
examples: ['myBucketName', 'myDbName']
|
|
- id: operation
|
|
requirement_level: required
|
|
type:
|
|
allow_custom_values: true
|
|
members:
|
|
- id: insert
|
|
value: 'insert'
|
|
brief: 'When a new object is created.'
|
|
- id: edit
|
|
value: 'edit'
|
|
brief: 'When an object is modified.'
|
|
- id: delete
|
|
value: 'delete'
|
|
brief: 'When an object is deleted.'
|
|
brief: 'Describes the type of the operation that was performed on the data.'
|
|
- id: time
|
|
type: string
|
|
brief: >
|
|
A string containing the time when the data was accessed in the
|
|
[ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html)
|
|
format expressed in [UTC](https://www.w3.org/TR/NOTE-datetime).
|
|
examples: "2020-01-23T13:47:06Z"
|
|
- id: name
|
|
type: string
|
|
brief: >
|
|
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.
|
|
examples: ["myFile.txt", "myTableName"]
|
|
|
|
- id: faas_span.http
|
|
type: span
|
|
brief: >
|
|
Semantic Convention for FaaS triggered as a response to some data
|
|
source operation such as a database or filesystem read/write.
|
|
constraints:
|
|
- include: trace.http.server
|
|
attributes: []
|
|
|
|
- id: faas_span.pubsub
|
|
type: span
|
|
brief: >
|
|
Semantic Convention for FaaS set to be executed when messages are
|
|
sent to a messaging system.
|
|
constraints:
|
|
- include: messaging
|
|
attributes: []
|
|
|
|
- id: faas_span.timer
|
|
prefix: faas
|
|
type: span
|
|
brief: >
|
|
Semantic Convention for FaaS scheduled to be executed regularly.
|
|
attributes:
|
|
- id: time
|
|
type: string
|
|
brief: >
|
|
A string containing the function invocation time in the
|
|
[ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html)
|
|
format expressed in [UTC](https://www.w3.org/TR/NOTE-datetime).
|
|
examples: "2020-01-23T13:47:06Z"
|
|
- id: cron
|
|
type: string
|
|
brief: >
|
|
A string containing the schedule period as
|
|
[Cron Expression](https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions.htm).
|
|
examples: "0/5 * * * ? *"
|
|
|
|
- id: faas_span.in
|
|
span_kind: server
|
|
prefix: faas
|
|
type: span
|
|
brief: >
|
|
Contains additional attributes for incoming FaaS spans.
|
|
attributes:
|
|
- id: coldstart
|
|
type: boolean
|
|
brief: >
|
|
A boolean that is true if the serverless function is executed for the
|
|
first time (aka cold-start).
|
|
- ref: faas.trigger
|
|
requirement_level: required
|
|
note: |
|
|
For the server/consumer span on the incoming side,
|
|
`faas.trigger` MUST be set.
|
|
|
|
Clients invoking FaaS instances usually cannot set `faas.trigger`,
|
|
since they would typically need to look in the payload to determine
|
|
the event type. If clients set it, it should be the same as the
|
|
trigger that corresponding incoming would have (i.e., this has
|
|
nothing to do with the underlying transport used to make the API
|
|
call to invoke the lambda, which is often HTTP).
|
|
|
|
- id: faas_span.out
|
|
span_kind: client
|
|
prefix: faas
|
|
type: span
|
|
brief: >
|
|
Contains additional attributes for outgoing FaaS spans.
|
|
attributes:
|
|
- ref: faas.invoked_name
|
|
- ref: faas.invoked_provider
|
|
- ref: faas.invoked_region
|