type config … type Option … // WithAttributes adds attributes to the configured Resource. func WithAttributes(attributes ...attribute.KeyValue) Option { … } type detectAttributes … func (d detectAttributes) Detect(context.Context) (*Resource, error) { … } // WithDetectors adds detectors to be evaluated for the configured resource. func WithDetectors(detectors ...Detector) Option { … } type detectorsOption … func (o detectorsOption) apply(cfg config) config { … } // WithFromEnv adds attributes from environment variables to the configured resource. func WithFromEnv() Option { … } // WithHost adds attributes from the host to the configured resource. func WithHost() Option { … } // WithHostID adds host ID information to the configured resource. func WithHostID() Option { … } // WithTelemetrySDK adds TelemetrySDK version info to the configured resource. func WithTelemetrySDK() Option { … } // WithSchemaURL sets the schema URL for the configured resource. func WithSchemaURL(schemaURL string) Option { … } type schemaURLOption … func (o schemaURLOption) apply(cfg config) config { … } // WithOS adds all the OS attributes to the configured Resource. // See individual WithOS* functions to configure specific attributes. func WithOS() Option { … } // WithOSType adds an attribute with the operating system type to the configured Resource. func WithOSType() Option { … } // WithOSDescription adds an attribute with the operating system description to the // configured Resource. The formatted string is equivalent to the output of the // `uname -snrvm` command. func WithOSDescription() Option { … } // WithProcess adds all the Process attributes to the configured Resource. // // Warning! This option will include process command line arguments. If these // contain sensitive information it will be included in the exported resource. // // This option is equivalent to calling WithProcessPID, // WithProcessExecutableName, WithProcessExecutablePath, // WithProcessCommandArgs, WithProcessOwner, WithProcessRuntimeName, // WithProcessRuntimeVersion, and WithProcessRuntimeDescription. See each // option function for information about what resource attributes each // includes. func WithProcess() Option { … } // WithProcessPID adds an attribute with the process identifier (PID) to the // configured Resource. func WithProcessPID() Option { … } // WithProcessExecutableName adds an attribute with the name of the process // executable to the configured Resource. func WithProcessExecutableName() Option { … } // WithProcessExecutablePath adds an attribute with the full path to the process // executable to the configured Resource. func WithProcessExecutablePath() Option { … } // WithProcessCommandArgs adds an attribute with all the command arguments (including // the command/executable itself) as received by the process to the configured // Resource. // // Warning! This option will include process command line arguments. If these // contain sensitive information it will be included in the exported resource. func WithProcessCommandArgs() Option { … } // WithProcessOwner adds an attribute with the username of the user that owns the process // to the configured Resource. func WithProcessOwner() Option { … } // WithProcessRuntimeName adds an attribute with the name of the runtime of this // process to the configured Resource. func WithProcessRuntimeName() Option { … } // WithProcessRuntimeVersion adds an attribute with the version of the runtime of // this process to the configured Resource. func WithProcessRuntimeVersion() Option { … } // WithProcessRuntimeDescription adds an attribute with an additional description // about the runtime of the process to the configured Resource. func WithProcessRuntimeDescription() Option { … } // WithContainer adds all the Container attributes to the configured Resource. // See individual WithContainer* functions to configure specific attributes. func WithContainer() Option { … } // WithContainerID adds an attribute with the id of the container to the configured Resource. // Note: WithContainerID will not extract the correct container ID in an ECS environment. // Please use the ECS resource detector instead (https://pkg.go.dev/go.opentelemetry.io/contrib/detectors/aws/ecs). func WithContainerID() Option { … }