Skip to content

Commit

Permalink
enhancement(datadog_logs sink, datadog_traces sink): default to zstd …
Browse files Browse the repository at this point in the history
…compression
  • Loading branch information
dsmith3197 committed Dec 22, 2023
1 parent af4de5e commit b0af10d
Show file tree
Hide file tree
Showing 4 changed files with 58 additions and 40 deletions.
10 changes: 8 additions & 2 deletions src/sinks/datadog/logs/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -47,14 +47,16 @@ impl SinkBatchSettings for DatadogLogsDefaultBatchSettings {

/// Configuration for the `datadog_logs` sink.
#[configurable_component(sink("datadog_logs", "Publish log events to Datadog."))]
#[derive(Clone, Debug, Default)]
#[derive(Clone, Debug, Derivative)]
#[derivative(Default)]
#[serde(deny_unknown_fields)]
pub struct DatadogLogsConfig {
#[serde(flatten)]
pub local_dd_common: LocalDatadogCommonConfig,

#[configurable(derived)]
#[serde(default)]
#[derivative(Default(value = "default_compression()"))]
#[serde(default = "default_compression")]
pub compression: Option<Compression>,

#[configurable(derived)]
Expand All @@ -73,6 +75,10 @@ pub struct DatadogLogsConfig {
pub request: RequestConfig,
}

const fn default_compression() -> Option<Compression> {
Some(Compression::zstd_default())
}

impl GenerateConfig for DatadogLogsConfig {
fn generate_config() -> toml::Value {
toml::from_str(indoc! {r#"
Expand Down
10 changes: 8 additions & 2 deletions src/sinks/datadog/traces/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -53,14 +53,16 @@ impl SinkBatchSettings for DatadogTracesDefaultBatchSettings {

/// Configuration for the `datadog_traces` sink.
#[configurable_component(sink("datadog_traces", "Publish trace events to Datadog."))]
#[derive(Clone, Debug, Default)]
#[derive(Clone, Debug, Derivative)]
#[derivative(Default)]
#[serde(deny_unknown_fields)]
pub struct DatadogTracesConfig {
#[serde(flatten)]
pub local_dd_common: LocalDatadogCommonConfig,

#[configurable(derived)]
#[serde(default)]
#[derivative(Default(value = "default_compression()"))]
#[serde(default = "default_compression")]
pub compression: Option<Compression>,

#[configurable(derived)]
Expand All @@ -72,6 +74,10 @@ pub struct DatadogTracesConfig {
pub request: TowerRequestConfig,
}

const fn default_compression() -> Option<Compression> {
Some(Compression::zstd_default())
}

impl GenerateConfig for DatadogTracesConfig {
fn generate_config() -> toml::Value {
toml::from_str(indoc! {r#"
Expand Down
39 changes: 21 additions & 18 deletions website/cue/reference/components/sinks/base/datadog_logs.cue
Original file line number Diff line number Diff line change
Expand Up @@ -69,28 +69,31 @@ base: components: sinks: datadog_logs: configuration: {
All compression algorithms use the default compression level unless otherwise specified.
"""
required: false
type: string: enum: {
gzip: """
[Gzip][gzip] compression.
type: string: {
default: "zstd"
enum: {
gzip: """
[Gzip][gzip] compression.
[gzip]: https://www.gzip.org/
"""
none: "No compression."
snappy: """
[Snappy][snappy] compression.
[gzip]: https://www.gzip.org/
"""
none: "No compression."
snappy: """
[Snappy][snappy] compression.
[snappy]: https://github.com/google/snappy/blob/main/docs/README.md
"""
zlib: """
[Zlib][zlib] compression.
[snappy]: https://github.com/google/snappy/blob/main/docs/README.md
"""
zlib: """
[Zlib][zlib] compression.
[zlib]: https://zlib.net/
"""
zstd: """
[Zstandard][zstd] compression.
[zlib]: https://zlib.net/
"""
zstd: """
[Zstandard][zstd] compression.
[zstd]: https://facebook.github.io/zstd/
"""
[zstd]: https://facebook.github.io/zstd/
"""
}
}
}
default_api_key: {
Expand Down
39 changes: 21 additions & 18 deletions website/cue/reference/components/sinks/base/datadog_traces.cue
Original file line number Diff line number Diff line change
Expand Up @@ -69,28 +69,31 @@ base: components: sinks: datadog_traces: configuration: {
All compression algorithms use the default compression level unless otherwise specified.
"""
required: false
type: string: enum: {
gzip: """
[Gzip][gzip] compression.
type: string: {
default: "zstd"
enum: {
gzip: """
[Gzip][gzip] compression.
[gzip]: https://www.gzip.org/
"""
none: "No compression."
snappy: """
[Snappy][snappy] compression.
[gzip]: https://www.gzip.org/
"""
none: "No compression."
snappy: """
[Snappy][snappy] compression.
[snappy]: https://github.com/google/snappy/blob/main/docs/README.md
"""
zlib: """
[Zlib][zlib] compression.
[snappy]: https://github.com/google/snappy/blob/main/docs/README.md
"""
zlib: """
[Zlib][zlib] compression.
[zlib]: https://zlib.net/
"""
zstd: """
[Zstandard][zstd] compression.
[zlib]: https://zlib.net/
"""
zstd: """
[Zstandard][zstd] compression.
[zstd]: https://facebook.github.io/zstd/
"""
[zstd]: https://facebook.github.io/zstd/
"""
}
}
}
default_api_key: {
Expand Down

0 comments on commit b0af10d

Please sign in to comment.