Telemetry - TracePipeline

The tracepipeline.telemetry.kyma-project.io CustomResourceDefinition (CRD) is a detailed description of the kind of data and the format used to filter and ship trace data in Kyma. To get the up-to-date CRD and show the output in the YAML format, run this command:

Click to copy
kubectl get crd tracepipeline.telemetry.kyma-project.io -o yaml

Sample custom resource

The following TracePipeline object defines a pipeline integrating into the local Jaeger instance.

Click to copy
apiVersion: telemetry.kyma-project.io/v1alpha1
kind: TracePipeline
metadata:
name: jaeger
spec:
output:
otlp:
endpoint:
value: http://jaeger-collector.jaeger.svc.cluster.local:4317
status:
conditions:
- lastTransitionTime: "2022-12-13T14:33:27Z"
reason: OpenTelemetryDeploymentNotReady
type: Pending
- lastTransitionTime: "2022-12-13T14:33:28Z"
reason: OpenTelemetryDeploymentReady
type: Running

For further TracePipeline examples, see the samples directory.

Custom resource parameters

For details, see the TracePipeline specification file.

TracePipeline.telemetry.kyma-project.io/v1alpha1

Spec:

ParameterTypeDescription
output (required)objectDefines a destination for shipping trace data. Only one can be defined per pipeline.
output.otlp (required)objectConfigures the underlying Otel Collector with an OTLP exporter. If you switch protocolto http, an OTLP HTTP exporter is used.
output.otlp.authenticationobjectDefines authentication options for the OTLP output
output.otlp.authentication.basicobjectActivates Basic authentication for the destination providing relevant Secrets.
output.otlp.authentication.basic.password (required)objectContains the basic auth password or a Secret reference.
output.otlp.authentication.basic.password.valuestringValue that can contain references to Secret values.
output.otlp.authentication.basic.password.valueFromobject
output.otlp.authentication.basic.password.valueFrom.secretKeyRefobjectRefers to a key in a Secret. You must provide name and namespace of the Secret, as well as the name of the key.
output.otlp.authentication.basic.password.valueFrom.secretKeyRef.keystring
output.otlp.authentication.basic.password.valueFrom.secretKeyRef.namestring
output.otlp.authentication.basic.password.valueFrom.secretKeyRef.namespacestring
output.otlp.authentication.basic.user (required)objectContains the basic auth username or a Secret reference.
output.otlp.authentication.basic.user.valuestringValue that can contain references to Secret values.
output.otlp.authentication.basic.user.valueFromobject
output.otlp.authentication.basic.user.valueFrom.secretKeyRefobjectRefers to a key in a Secret. You must provide name and namespace of the Secret, as well as the name of the key.
output.otlp.authentication.basic.user.valueFrom.secretKeyRef.keystring
output.otlp.authentication.basic.user.valueFrom.secretKeyRef.namestring
output.otlp.authentication.basic.user.valueFrom.secretKeyRef.namespacestring
output.otlp.endpoint (required)objectDefines the host and port (:) of an OTLP endpoint.
output.otlp.endpoint.valuestringValue that can contain references to Secret values.
output.otlp.endpoint.valueFromobject
output.otlp.endpoint.valueFrom.secretKeyRefobjectRefers to a key in a Secret. You must provide name and namespace of the Secret, as well as the name of the key.
output.otlp.endpoint.valueFrom.secretKeyRef.keystring
output.otlp.endpoint.valueFrom.secretKeyRef.namestring
output.otlp.endpoint.valueFrom.secretKeyRef.namespacestring
output.otlp.headers[]objectDefines custom headers to be added to outgoing HTTP or GRPC requests.
output.otlp.headers.name (required)stringDefines the header name.
output.otlp.headers.valuestringValue that can contain references to Secret values.
output.otlp.headers.valueFromobject
output.otlp.headers.valueFrom.secretKeyRefobjectRefers to a key in a Secret. You must provide name and namespace of the Secret, as well as the name of the key.
output.otlp.headers.valueFrom.secretKeyRef.keystring
output.otlp.headers.valueFrom.secretKeyRef.namestring
output.otlp.headers.valueFrom.secretKeyRef.namespacestring
output.otlp.protocolstringDefines the OTLP protocol (http or grpc). Default is GRPC.

Status:

ParameterTypeDescription
conditions[]objectAn array of conditions describing the status of the pipeline.
conditions.lastTransitionTimestringAn array of conditions describing the status of the pipeline.
conditions.reasonstringAn array of conditions describing the status of the pipeline.
conditions.typestringThe possible transition types are:- Running: The instance is ready and usable.- Pending: The pipeline is being activated.