pub struct TracingCliArgs {
    pub log_filter: SerializableTargets,
    pub log_format: LogFormat,
    pub log_prefix: Option<String>,
    pub opentelemetry_enabled: DefaultTrue,
    pub opentelemetry_endpoint: Option<String>,
    pub opentelemetry_header: Vec<KeyValueArg<HeaderName, HeaderValue>>,
    pub opentelemetry_filter: SerializableTargets,
    pub opentelemetry_resource: Vec<KeyValueArg<String, String>>,
    pub tokio_console_listen_addr: Option<SocketAddr>,
    pub tokio_console_publish_interval: Duration,
    pub tokio_console_retention: Duration,
    pub sentry_dsn: Option<String>,
}
Expand description

Command line arguments for application tracing.

These arguments correspond directly to parameters in TracingConfig, and this type can be directly converted into a TracingConfig via the supplied From<TracingCliArgs> implementation.

This logic is separated from mz_ore::tracing because the details of how these command-line arguments are parsed and unparsed is specific to orchestrators and does not belong in a foundational crate like mz_ore.

Fields

log_filter: SerializableTargets

Which tracing events to log to stderr.

This value is a comma-separated list of filter directives. Each filter directive has the following format:

[module::path=]level

A directive indicates that log messages from the specified module that are at least as severe as the specified level should be emitted. If a directive omits the module, then it implicitly applies to all modules. When directives conflict, the last directive wins. If a log message does not match any directive, it is not emitted.

The module path of a log message reflects its location in Materialize’s source code. Choosing module paths for filter directives requires familiarity with Materialize’s codebase and is intended for advanced users. Note that module paths change frequency from release to release.

The valid levels for a log message are, in increasing order of severity: trace, debug, info, warn, and error. The special level “off” may be used in a directive to suppress all log messages, even errors.

The default value for this option is “info”.

log_format: LogFormat

The format to use for stderr log messages.

log_prefix: Option<String>

An optional prefix for each stderr log line.

Only respected when --log-format is text.

opentelemetry_enabled: DefaultTrue

Whether OpenTelemetry tracing is enabled by default.

OpenTelemetry tracing can be dynamically toggled during runtime via the internal HTTP server.

Requires that the --opentelemetry-endpoint option is specified.

opentelemetry_endpoint: Option<String>

Export OpenTelemetry tracing events to the provided endpoint.

The specified endpoint should speak the OTLP/HTTP protocol. If the backend requires authentication, you can pass authentication metadata via the --opentelemetry-header option.

opentelemetry_header: Vec<KeyValueArg<HeaderName, HeaderValue>>

A header to pass with every request to the OpenTelemetry endpoint specified by --opentelemetry-endpoint in the form NAME=VALUE.

Requires that the --opentelemetry-endpoint option is specified. To specify multiple headers, either specify this option multiple times, or specify it once with multiple NAME=VALUE pairs separated by commas.

opentelemetry_filter: SerializableTargets

Which tracing events to export to the OpenTelemetry endpoint specified by --opentelemetry-endpoint.

The syntax of this option is the same as the syntax of the --log-filter option.

Requires that the --opentelemetry-endpoint option is specified.

opentelemetry_resource: Vec<KeyValueArg<String, String>>

Additional key-value pairs to send with all opentelemetry traces.

Requires that the --opentelemetry-endpoint option is specified.

tokio_console_listen_addr: Option<SocketAddr>

The address on which to listen for Tokio console connections.

For details about Tokio console, see: https://github.com/tokio-rs/console

Requires that the --tokio-console option is specified.

tokio_console_publish_interval: Duration

How frequently to publish updates to Tokio console clients.

Requires that the --tokio-console option is specified.

tokio_console_retention: Duration

How long Tokio console data is retained for completed tasks.

Requires that the --tokio-console option is specified.

sentry_dsn: Option<String>

Sentry data source to submit events and exceptions (e.g. panics) to.

Trait Implementations

Append to Command so it can instantiate Self. Read more
Append to Command so it can update self. Read more
Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Deprecated, replaced with CommandFactory::command
Deprecated, replaced with CommandFactory::command_for_update
Build a Command that can instantiate Self. Read more
Build a Command that can update self. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Converts to this type from the input type.
Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Instantiate Self from ArgMatches, parsing the arguments as needed. Read more
Assign values from ArgMatches to self.
Assign values from ArgMatches to self.
Parse from std::env::args_os(), exit on error
Parse from std::env::args_os(), return Err on error.
Parse from iterator, exit on error
Parse from iterator, return Err on error.
Update from iterator, exit on error
Update from iterator, return Err on error.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
Attaches the current Context to this type, returning a WithContext wrapper. Read more
Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Wrap the input message T in a tonic::Request
Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more