84 lines
3.2 KiB
YAML
84 lines
3.2 KiB
YAML
groups:
|
|
- id: faas_span
|
|
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).
|
|
- ref: faas.invocation_id
|
|
- ref: cloud.resource_id
|
|
|
|
- id: faas_span.datasource
|
|
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:
|
|
- ref: faas.document.collection
|
|
requirement_level: required
|
|
- ref: faas.document.operation
|
|
requirement_level: required
|
|
- ref: faas.document.time
|
|
- ref: faas.document.name
|
|
|
|
- id: faas_span.timer
|
|
type: span
|
|
brief: >
|
|
Semantic Convention for FaaS scheduled to be executed regularly.
|
|
attributes:
|
|
- ref: faas.time
|
|
- ref: faas.cron
|
|
|
|
- id: faas_span.in
|
|
span_kind: server
|
|
type: span
|
|
brief: >
|
|
Contains additional attributes for incoming FaaS spans.
|
|
attributes:
|
|
- ref: faas.coldstart
|
|
- 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
|
|
type: span
|
|
brief: >
|
|
Contains additional attributes for outgoing FaaS spans.
|
|
attributes:
|
|
- ref: faas.invoked_name
|
|
requirement_level: required
|
|
- ref: faas.invoked_provider
|
|
requirement_level: required
|
|
- ref: faas.invoked_region
|
|
requirement_level:
|
|
conditionally_required: >
|
|
For some cloud providers, like AWS or GCP, the region in which a
|
|
function is hosted is essential to uniquely identify the function
|
|
and also part of its endpoint. Since it's part of the endpoint
|
|
being called, the region is always known to clients. In these cases,
|
|
`faas.invoked_region` MUST be set accordingly. If the region is
|
|
unknown to the client or not required for identifying the invoked
|
|
function, setting `faas.invoked_region` is optional.
|