@@ -23,6 +23,14 @@ type Config struct {
2323 Source string
2424 Host string
2525 CustomTags string
26+ Scrubbing ScrubbingConfig
27+ }
28+
29+ type ScrubbingConfig struct {
30+ ScrubIP bool
31+ ScrubEmail bool
32+ CustomRule string
33+ CustomReplacement string
2634}
2735
2836func Load (ctx context.Context ) (* Config , error ) {
@@ -54,6 +62,12 @@ func loadConfig() *Config {
5462 Source : envOrDefault ("DD_SOURCE" , "" ),
5563 Host : envOrDefault ("DD_HOST" , "" ),
5664 CustomTags : envOrDefault ("DD_TAGS" , "" ),
65+ Scrubbing : ScrubbingConfig {
66+ ScrubIP : envOrDefaultBool ("REDACT_IP" , false ),
67+ ScrubEmail : envOrDefaultBool ("REDACT_EMAIL" , false ),
68+ CustomRule : envOrDefault ("DD_SCRUBBING_RULE" , "" ),
69+ CustomReplacement : envOrDefault ("DD_SCRUBBING_RULE_REPLACEMENT" , "" ),
70+ },
5771 }
5872}
5973
@@ -64,5 +78,8 @@ func (c Config) LogValue() slog.Value {
6478 slog .String ("apiUrl" , c .APIURL ),
6579 slog .String ("loglevel" , c .LogLevel ),
6680 slog .Bool ("fips" , c .UseFIPS ),
81+ slog .Bool ("redactIP" , c .Scrubbing .ScrubIP ),
82+ slog .Bool ("redactEmail" , c .Scrubbing .ScrubEmail ),
83+ slog .Bool ("customScrubbing" , c .Scrubbing .CustomRule != "" ),
6784 )
6885}
0 commit comments