Skip to content

Commit daba728

Browse files
committed
remove hardcoded name
1 parent b8712ae commit daba728

6 files changed

Lines changed: 21 additions & 17 deletions

File tree

comp/core/autodiscovery/providers/names/provider_names.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ const (
2222
KubeServicesFile = "kubernetes-services-file"
2323
KubeEndpoints = "kubernetes-endpoints"
2424
KubeEndpointsFile = "kubernetes-endpoints-file"
25+
ProcessLog = "process_log"
2526
PrometheusPods = "prometheus-pods"
2627
PrometheusServices = "prometheus-services"
2728
RemoteConfig = "remote-config"

comp/core/autodiscovery/providers/process_log_provider.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import (
1919
"unicode/utf8"
2020

2121
"github.com/DataDog/datadog-agent/comp/core/autodiscovery/integration"
22+
"github.com/DataDog/datadog-agent/comp/core/autodiscovery/providers/names"
2223
"github.com/DataDog/datadog-agent/comp/core/autodiscovery/providers/types"
2324
"github.com/DataDog/datadog-agent/comp/core/autodiscovery/telemetry"
2425
workloadmeta "github.com/DataDog/datadog-agent/comp/core/workloadmeta/def"
@@ -28,7 +29,7 @@ import (
2829
"github.com/hashicorp/golang-lru/v2/simplelru"
2930
)
3031

31-
const processLogProviderName = "process_log"
32+
const processLogProviderName = names.ProcessLog
3233

3334
// serviceLogRef tracks reference count and config for a service+log combination
3435
type serviceLogRef struct {
@@ -279,7 +280,7 @@ func (p *ProcessLogConfigProvider) buildConfig(process *workloadmeta.Process, lo
279280
LogsConfig: data,
280281
Provider: processLogProviderName,
281282
Source: "process-log:" + process.Service.GeneratedName,
282-
ServiceID: fmt.Sprintf("process_log://%s", serviceLogKey),
283+
ServiceID: fmt.Sprintf("%s://%s", names.ProcessLog, serviceLogKey),
283284
}, nil
284285
}
285286

comp/core/autodiscovery/providers/process_log_provider_test.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,13 @@
88
package providers
99

1010
import (
11+
"fmt"
1112
"os"
1213
"strings"
1314
"testing"
1415

1516
"github.com/DataDog/datadog-agent/comp/core/autodiscovery/integration"
17+
"github.com/DataDog/datadog-agent/comp/core/autodiscovery/providers/names"
1618
"github.com/DataDog/datadog-agent/comp/core/autodiscovery/providers/types"
1719
workloadmeta "github.com/DataDog/datadog-agent/comp/core/workloadmeta/def"
1820
"github.com/stretchr/testify/assert"
@@ -64,7 +66,7 @@ func TestProcessLogProviderEvents(t *testing.T) {
6466
assert.Len(t, changes.Unschedule, 0)
6567
config := changes.Schedule[0]
6668
assert.Equal(t, "process-test-service-gen-_var_log_test.log", config.Name)
67-
assert.Equal(t, "process_log", config.Provider)
69+
assert.Equal(t, names.ProcessLog, config.Provider)
6870
assert.Contains(t, string(config.LogsConfig), "/var/log/test.log")
6971

7072
// check that scheduling the same config again doesn't do anything
@@ -188,7 +190,7 @@ func TestProcessLogProviderString(t *testing.T) {
188190
p, ok := provider.(*ProcessLogConfigProvider)
189191
require.True(t, ok)
190192

191-
assert.Equal(t, "process_log", p.String())
193+
assert.Equal(t, names.ProcessLog, p.String())
192194
}
193195

194196
func TestStream(t *testing.T) {
@@ -339,7 +341,7 @@ func TestReferenceCounting(t *testing.T) {
339341
assert.Len(t, changes.Unschedule, 0)
340342
config := changes.Schedule[0]
341343
assert.Equal(t, "process-test-service-gen-_var_log_test.log", config.Name)
342-
assert.Equal(t, "process_log://test-service-gen:_var_log_test.log", config.ServiceID)
344+
assert.Equal(t, fmt.Sprintf("%s://test-service-gen:_var_log_test.log", names.ProcessLog), config.ServiceID)
343345

344346
// Verify reference count is 1
345347
serviceLogKey := p.generateServiceLogKey("test-service-gen", "/var/log/test.log")
@@ -530,7 +532,7 @@ func TestReferenceCountingPathSanitization(t *testing.T) {
530532

531533
config := changes.Schedule[0]
532534
assert.Equal(t, "process-test-service-gen-_var_log_test.log", config.Name)
533-
assert.Equal(t, "process_log://test-service-gen:_var_log_test.log", config.ServiceID)
535+
assert.Equal(t, fmt.Sprintf("%s://test-service-gen:_var_log_test.log", names.ProcessLog), config.ServiceID)
534536
}
535537

536538
func TestInvalidEvent(t *testing.T) {

comp/core/autodiscovery/providers/providers.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,5 +60,5 @@ func RegisterProviders(providerCatalog map[string]types.ConfigProviderFactory) {
6060
RegisterProvider(names.PrometheusServicesRegisterName, NewPrometheusServicesConfigProvider, providerCatalog)
6161
RegisterProvider(names.ZookeeperRegisterName, NewZookeeperConfigProvider, providerCatalog)
6262
RegisterProviderWithComponents(names.GPU, NewGPUConfigProvider, providerCatalog)
63-
RegisterProviderWithComponents("process_log", NewProcessLogConfigProvider, providerCatalog)
63+
RegisterProviderWithComponents(names.ProcessLog, NewProcessLogConfigProvider, providerCatalog)
6464
}

pkg/logs/schedulers/ad/scheduler.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ func (s *Scheduler) Schedule(configs []integration.Config) {
9999
// before dynamically discovered logs, which should be true since parsing of
100100
// configuration files is done before discovery of running services.
101101
func (s *Scheduler) filterConflictingSources(newSources []*sourcesPkg.LogSource, provider string) []*sourcesPkg.LogSource {
102-
if provider != "process_log" {
102+
if provider != names.ProcessLog {
103103
// For non-process_log providers, add all sources without filtering
104104
return newSources
105105
}
@@ -122,7 +122,7 @@ func (s *Scheduler) filterConflictingSources(newSources []*sourcesPkg.LogSource,
122122
path := existingSource.Config.Path
123123
if _, exists := newFilePaths[path]; exists {
124124
// Found a conflict with a manually configured log file
125-
log.Debugf("Ignoring process_log config for %s due to existing manual configuration", path)
125+
log.Debugf("Ignoring %s config for %s due to existing manual configuration", names.ProcessLog, path)
126126
delete(newFilePaths, path)
127127
}
128128
}
@@ -205,7 +205,7 @@ func CreateSources(config integration.Config) ([]*sourcesPkg.LogSource, error) {
205205
case names.File:
206206
// config defined in a file
207207
configs, err = logsConfig.ParseYAML(config.LogsConfig)
208-
case names.Container, names.Kubernetes, names.KubeContainer, "process_log":
208+
case names.Container, names.Kubernetes, names.KubeContainer, names.ProcessLog:
209209
// config attached to a container label or a pod annotation
210210
configs, err = logsConfig.ParseJSON(config.LogsConfig)
211211
case names.RemoteConfig:
@@ -257,7 +257,7 @@ func CreateSources(config integration.Config) ([]*sourcesPkg.LogSource, error) {
257257
if service != nil {
258258
// a config defined in a container label or a pod annotation does not always contain a type,
259259
// override it here to ensure that the config won't be dropped at validation.
260-
if (cfg.Type == logsConfig.FileType || cfg.Type == logsConfig.TCPType || cfg.Type == logsConfig.UDPType) && (config.Provider == names.Kubernetes || config.Provider == names.Container || config.Provider == names.KubeContainer || config.Provider == logsConfig.FileType || config.Provider == "process_log") {
260+
if (cfg.Type == logsConfig.FileType || cfg.Type == logsConfig.TCPType || cfg.Type == logsConfig.UDPType) && (config.Provider == names.Kubernetes || config.Provider == names.Container || config.Provider == names.KubeContainer || config.Provider == logsConfig.FileType || config.Provider == names.ProcessLog) {
261261
// cfg.Type is not overwritten as tailing a file from a Docker or Kubernetes AD configuration
262262
// is explicitly supported (other combinations may be supported later)
263263
cfg.Identifier = service.Identifier

pkg/logs/schedulers/ad/scheduler_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -222,9 +222,9 @@ func TestProcessLogPriorityOverManualConfig(t *testing.T) {
222222
// Now try to add a process_log config for the same file
223223
processLogConfig := integration.Config{
224224
LogsConfig: []byte(`[{"type":"file","path":"/var/log/app.log","service":"process-service"}]`),
225-
Provider: "process_log",
225+
Provider: names.ProcessLog,
226226
Name: "process-config",
227-
ServiceID: "process_log://test-service:/var_log_app.log",
227+
ServiceID: fmt.Sprintf("%s://test-service:/var_log_app.log", names.ProcessLog),
228228
}
229229

230230
// Clear events for the next test
@@ -243,9 +243,9 @@ func TestProcessLogConfigAllowedWhenNoConflict(t *testing.T) {
243243
// Add a process_log config for a file that doesn't have a manual config
244244
processLogConfig := integration.Config{
245245
LogsConfig: []byte(`[{"type":"file","path":"/var/log/process.log","service":"process-service"}]`),
246-
Provider: "process_log",
246+
Provider: names.ProcessLog,
247247
Name: "process-config",
248-
ServiceID: "process_log://test-service:/var_log_process.log",
248+
ServiceID: fmt.Sprintf("%s://test-service:/var_log_process.log", names.ProcessLog),
249249
}
250250

251251
// Schedule the process_log config
@@ -266,9 +266,9 @@ func TestNonFileTypeProcessLogConfigAllowed(t *testing.T) {
266266
// Add a process_log config for a non-file type (should not be filtered)
267267
processLogConfig := integration.Config{
268268
LogsConfig: []byte(`[{"type":"tcp","service":"process-service"}]`),
269-
Provider: "process_log",
269+
Provider: names.ProcessLog,
270270
Name: "process-config",
271-
ServiceID: "process_log://test-service",
271+
ServiceID: fmt.Sprintf("%s://test-service", names.ProcessLog),
272272
}
273273

274274
// Schedule the process_log config

0 commit comments

Comments
 (0)