Skip to content

Commit d4a6dd5

Browse files
authored
service discovery: Remove name field (#36871)
1 parent 71268ee commit d4a6dd5

10 files changed

Lines changed: 28 additions & 68 deletions

File tree

pkg/collector/corechecks/servicediscovery/events.go

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ const (
2929

3030
type eventPayload struct {
3131
NamingSchemaVersion string `json:"naming_schema_version"`
32-
ServiceName string `json:"service_name"`
3332
GeneratedServiceName string `json:"generated_service_name"`
3433
GeneratedServiceNameSource string `json:"generated_service_name_source,omitempty"`
3534
AdditionalGeneratedNames []string `json:"additional_generated_names,omitempty"`
@@ -87,7 +86,6 @@ func (ts *telemetrySender) newEvent(t eventType, service model.Service) *event {
8786
APIVersion: "v2",
8887
Payload: &eventPayload{
8988
NamingSchemaVersion: "1",
90-
ServiceName: service.Name,
9189
GeneratedServiceName: service.GeneratedName,
9290
GeneratedServiceNameSource: service.GeneratedNameSource,
9391
AdditionalGeneratedNames: service.AdditionalGeneratedNames,
@@ -127,9 +125,10 @@ func newTelemetrySender(sender sender.Sender) *telemetrySender {
127125
}
128126

129127
func (ts *telemetrySender) sendStartServiceEvent(service model.Service) {
130-
log.Debugf("[pid: %d | name: %s | ports: %v] start-service",
128+
log.Debugf("[pid: %d | ddservice: %s | generated: %s | ports: %v] start-service",
131129
service.PID,
132-
service.Name,
130+
service.DDService,
131+
service.GeneratedName,
133132
service.Ports,
134133
)
135134

@@ -144,9 +143,10 @@ func (ts *telemetrySender) sendStartServiceEvent(service model.Service) {
144143
}
145144

146145
func (ts *telemetrySender) sendHeartbeatServiceEvent(service model.Service) {
147-
log.Debugf("[pid: %d | name: %s] heartbeat-service",
146+
log.Debugf("[pid: %d | ddservice: %s | generated: %s] heartbeat-service",
148147
service.PID,
149-
service.Name,
148+
service.DDService,
149+
service.GeneratedName,
150150
)
151151

152152
e := ts.newEvent(eventTypeHeartbeatService, service)
@@ -160,9 +160,10 @@ func (ts *telemetrySender) sendHeartbeatServiceEvent(service model.Service) {
160160
}
161161

162162
func (ts *telemetrySender) sendEndServiceEvent(service model.Service) {
163-
log.Debugf("[pid: %d | name: %s] end-service",
163+
log.Debugf("[pid: %d | ddservice: %s | generated: %s] end-service",
164164
service.PID,
165-
service.Name,
165+
service.DDService,
166+
service.GeneratedName,
166167
)
167168

168169
e := ts.newEvent(eventTypeEndService, service)

pkg/collector/corechecks/servicediscovery/events_test.go

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ func Test_telemetrySender(t *testing.T) {
5555

5656
service := model.Service{
5757
PID: 99,
58-
Name: "test-service",
5958
GeneratedName: "generated-name",
6059
GeneratedNameSource: "generated-name-source",
6160
AdditionalGeneratedNames: []string{"additional0", "additional1"},
@@ -93,7 +92,6 @@ func Test_telemetrySender(t *testing.T) {
9392
APIVersion: "v2",
9493
Payload: &eventPayload{
9594
NamingSchemaVersion: "1",
96-
ServiceName: "test-service",
9795
GeneratedServiceName: "generated-name",
9896
GeneratedServiceNameSource: "generated-name-source",
9997
AdditionalGeneratedNames: []string{"additional0", "additional1"},
@@ -130,7 +128,6 @@ func Test_telemetrySender(t *testing.T) {
130128
APIVersion: "v2",
131129
Payload: &eventPayload{
132130
NamingSchemaVersion: "1",
133-
ServiceName: "test-service",
134131
GeneratedServiceName: "generated-name",
135132
GeneratedServiceNameSource: "generated-name-source",
136133
AdditionalGeneratedNames: []string{"additional0", "additional1"},
@@ -167,7 +164,6 @@ func Test_telemetrySender(t *testing.T) {
167164
APIVersion: "v2",
168165
Payload: &eventPayload{
169166
NamingSchemaVersion: "1",
170-
ServiceName: "test-service",
171167
GeneratedServiceName: "generated-name",
172168
GeneratedServiceNameSource: "generated-name-source",
173169
AdditionalGeneratedNames: []string{"additional0", "additional1"},
@@ -225,7 +221,6 @@ func Test_telemetrySender_name_provided(t *testing.T) {
225221

226222
service := model.Service{
227223
PID: 55,
228-
Name: "test-service",
229224
GeneratedName: "generated-name2",
230225
GeneratedNameSource: "generated-name-source2",
231226
ContainerServiceName: "container-service-name2",
@@ -254,7 +249,6 @@ func Test_telemetrySender_name_provided(t *testing.T) {
254249
APIVersion: "v2",
255250
Payload: &eventPayload{
256251
NamingSchemaVersion: "1",
257-
ServiceName: "test-service",
258252
GeneratedServiceName: "generated-name2",
259253
GeneratedServiceNameSource: "generated-name-source2",
260254
ContainerServiceName: "container-service-name2",
@@ -283,7 +277,6 @@ func Test_telemetrySender_name_provided(t *testing.T) {
283277
APIVersion: "v2",
284278
Payload: &eventPayload{
285279
NamingSchemaVersion: "1",
286-
ServiceName: "test-service",
287280
GeneratedServiceName: "generated-name2",
288281
GeneratedServiceNameSource: "generated-name-source2",
289282
ContainerServiceName: "container-service-name2",
@@ -312,7 +305,6 @@ func Test_telemetrySender_name_provided(t *testing.T) {
312305
APIVersion: "v2",
313306
Payload: &eventPayload{
314307
NamingSchemaVersion: "1",
315-
ServiceName: "test-service",
316308
GeneratedServiceName: "generated-name2",
317309
GeneratedServiceNameSource: "generated-name-source2",
318310
ContainerServiceName: "container-service-name2",

pkg/collector/corechecks/servicediscovery/impl_linux_test.go

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@ var (
5757
var (
5858
portTCP8080 = model.Service{
5959
PID: procTestService1.pid,
60-
Name: "test-service-1",
6160
GeneratedName: "test-service-1-generated",
6261
GeneratedNameSource: "test-service-1-generated-source",
6362
ContainerServiceName: "test-service-1-container",
@@ -83,7 +82,6 @@ var (
8382
}
8483
portTCP8080UpdatedRSS = model.Service{
8584
PID: procTestService1.pid,
86-
Name: "test-service-1",
8785
GeneratedName: "test-service-1-generated",
8886
GeneratedNameSource: "test-service-1-generated-source",
8987
ContainerServiceName: "test-service-1-container",
@@ -109,7 +107,6 @@ var (
109107
}
110108
portTCP5000 = model.Service{
111109
PID: procPythonService.pid,
112-
Name: "python-service",
113110
GeneratedName: "python-service",
114111
GeneratedNameSource: "python-service-source",
115112
AdditionalGeneratedNames: []string{"bar", "foo"},
@@ -147,7 +144,6 @@ func cmpEvents(a, b *event) bool {
147144

148145
vals := []any{
149146
cmp.Compare(ap.LastSeen, bp.LastSeen),
150-
cmp.Compare(ap.ServiceName, bp.ServiceName),
151147
cmp.Compare(ap.ServiceType, bp.ServiceType),
152148
cmp.Compare(ap.ServiceLanguage, bp.ServiceLanguage),
153149
cmp.Compare(ap.Ports[0], bp.Ports[0]),
@@ -205,7 +201,6 @@ func Test_linuxImpl(t *testing.T) {
205201
APIVersion: "v2",
206202
Payload: &eventPayload{
207203
NamingSchemaVersion: "1",
208-
ServiceName: "test-service-1",
209204
GeneratedServiceName: "test-service-1-generated",
210205
GeneratedServiceNameSource: "test-service-1-generated-source",
211206
ContainerServiceName: "test-service-1-container",
@@ -240,7 +235,6 @@ func Test_linuxImpl(t *testing.T) {
240235
APIVersion: "v2",
241236
Payload: &eventPayload{
242237
NamingSchemaVersion: "1",
243-
ServiceName: "test-service-1",
244238
GeneratedServiceName: "test-service-1-generated",
245239
GeneratedServiceNameSource: "test-service-1-generated-source",
246240
ContainerServiceName: "test-service-1-container",
@@ -275,7 +269,6 @@ func Test_linuxImpl(t *testing.T) {
275269
APIVersion: "v2",
276270
Payload: &eventPayload{
277271
NamingSchemaVersion: "1",
278-
ServiceName: "test-service-1",
279272
GeneratedServiceName: "test-service-1-generated",
280273
GeneratedServiceNameSource: "test-service-1-generated-source",
281274
ContainerServiceName: "test-service-1-container",
@@ -310,7 +303,6 @@ func Test_linuxImpl(t *testing.T) {
310303
APIVersion: "v2",
311304
Payload: &eventPayload{
312305
NamingSchemaVersion: "1",
313-
ServiceName: "python-service",
314306
GeneratedServiceName: "python-service",
315307
GeneratedServiceNameSource: "python-service-source",
316308
AdditionalGeneratedNames: []string{"bar", "foo"},
@@ -338,7 +330,6 @@ func Test_linuxImpl(t *testing.T) {
338330
APIVersion: "v2",
339331
Payload: &eventPayload{
340332
NamingSchemaVersion: "1",
341-
ServiceName: "python-service",
342333
GeneratedServiceName: "python-service",
343334
GeneratedServiceNameSource: "python-service-source",
344335
AdditionalGeneratedNames: []string{"bar", "foo"},

pkg/collector/corechecks/servicediscovery/model/model.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import (
1313
// Service represents a listening process.
1414
type Service struct {
1515
PID int `json:"pid"`
16-
Name string `json:"name"`
1716
GeneratedName string `json:"generated_name"`
1817
GeneratedNameSource string `json:"generated_name_source"`
1918
AdditionalGeneratedNames []string `json:"additional_generated_names"`

pkg/collector/corechecks/servicediscovery/module/impl_linux.go

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ var _ module.Module = &discovery{}
6464
// serviceInfo holds process data that should be cached between calls to the
6565
// endpoint.
6666
type serviceInfo struct {
67-
name string
6867
generatedName string
6968
generatedNameSource string
7069
additionalGeneratedNames []string
@@ -100,7 +99,6 @@ func (i *serviceInfo) toModelService(pid int32, out *model.Service) *model.Servi
10099
}
101100

102101
out.PID = int(pid)
103-
out.Name = i.name
104102
out.GeneratedName = i.generatedName
105103
out.GeneratedNameSource = i.generatedNameSource
106104
out.AdditionalGeneratedNames = i.additionalGeneratedNames
@@ -624,15 +622,9 @@ func (s *discovery) getServiceInfo(pid int32) (*serviceInfo, error) {
624622
nameMeta := detector.GetServiceName(lang, ctx)
625623
apmInstrumentation := apm.Detect(lang, ctx, firstMetadata)
626624

627-
name := nameMeta.DDService
628-
if name == "" {
629-
name = nameMeta.Name
630-
}
631-
632625
cmdline, _ = s.scrubber.ScrubCommand(cmdline)
633626

634627
return &serviceInfo{
635-
name: name,
636628
generatedName: nameMeta.Name,
637629
generatedNameSource: string(nameMeta.Source),
638630
additionalGeneratedNames: nameMeta.AdditionalNames,
@@ -757,7 +749,11 @@ func (s *discovery) getService(context parsingContext, pid int32) *model.Service
757749
s.cache[pid] = info
758750
}
759751

760-
if s.shouldIgnoreService(info.name) {
752+
preferredName := info.ddServiceName
753+
if preferredName == "" {
754+
preferredName = info.generatedName
755+
}
756+
if s.shouldIgnoreService(preferredName) {
761757
s.addIgnoredPid(pid)
762758
return nil
763759
}
@@ -1172,7 +1168,6 @@ func (s *discovery) getServices(params params) (*model.ServicesResponse, error)
11721168

11731169
// This is a new potential service
11741170
s.potentialServices.add(pid)
1175-
log.Debugf("[pid: %d] adding process to potential: %s", pid, service.Name)
11761171
}
11771172

11781173
s.updateCacheInfo(response, now)

pkg/collector/corechecks/servicediscovery/module/impl_linux_test.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -442,7 +442,6 @@ func TestServiceName(t *testing.T) {
442442

443443
// Non-ASCII character removed due to normalization.
444444
assert.Equal(collect, "foo_bar", startEvent.DDService)
445-
assert.Equal(collect, startEvent.DDService, startEvent.Name)
446445
assert.Equal(collect, "sleep", startEvent.GeneratedName)
447446
assert.Equal(collect, string(usm.CommandLine), startEvent.GeneratedNameSource)
448447
assert.False(collect, startEvent.DDServiceInjected)
@@ -483,7 +482,6 @@ func TestServiceLifetime(t *testing.T) {
483482
checkService := func(t assert.TestingT, service *model.Service, expectedTime time.Time) {
484483
// Non-ASCII character removed due to normalization.
485484
assert.Equal(t, "foo_bar", service.DDService)
486-
assert.Equal(t, service.DDService, service.Name)
487485
assert.Equal(t, "sleep", service.GeneratedName)
488486
assert.Equal(t, string(usm.CommandLine), service.GeneratedNameSource)
489487
assert.False(t, service.DDServiceInjected)
@@ -805,7 +803,6 @@ func TestNodeDocker(t *testing.T) {
805803
// test@... changed to test_... due to normalization.
806804
assert.Equal(collect, "test_nodejs-https-server", startEvent.GeneratedName)
807805
assert.Equal(collect, string(usm.Nodejs), startEvent.GeneratedNameSource)
808-
assert.Equal(collect, startEvent.GeneratedName, startEvent.Name)
809806
assert.Equal(collect, "provided", startEvent.APMInstrumentation)
810807
assert.Equal(collect, "web_service", startEvent.Type)
811808
assertStat(collect, *startEvent)
@@ -993,7 +990,6 @@ func TestDocker(t *testing.T) {
993990
require.NotNilf(t, startEvent, "could not find start event for pid %v", pid1111)
994991
require.Contains(t, startEvent.Ports, uint16(1234))
995992
require.Contains(t, startEvent.ContainerID, "dummyCID")
996-
require.Contains(t, startEvent.Name, "http.server")
997993
require.Contains(t, startEvent.GeneratedName, "http.server")
998994
require.Contains(t, startEvent.GeneratedNameSource, string(usm.CommandLine))
999995
require.Contains(t, startEvent.ContainerServiceName, "foo_from_app_tag")

test/fakeintake/aggregator/servicediscoveryAggregator.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ type ServiceDiscoveryPayload struct {
2929
APIVersion string `json:"api_version"`
3030
Payload struct {
3131
NamingSchemaVersion string `json:"naming_schema_version"`
32-
ServiceName string `json:"service_name"`
3332
GeneratedServiceName string `json:"generated_service_name"`
3433
TracerMetadata []TracerMetadata `json:"tracer_metadata"`
3534
DDService string `json:"dd_service,omitempty"`

test/fakeintake/aggregator/servicediscoveryAggregator_test.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ func TestServiceDiscoveryAggregator(t *testing.T) {
3737
require.Len(t, payloads, 3)
3838

3939
assert.Equal(t, "start-service", payloads[0].RequestType)
40-
assert.Equal(t, "chronyd", payloads[0].Payload.ServiceName)
4140
assert.Equal(t, "web_service", payloads[1].Payload.ServiceType)
4241
assert.Equal(t, "ip-10-1-60-129", payloads[2].Payload.HostName)
4342
})

test/new-e2e/tests/discovery/docker_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,8 @@ func (s *dockerDiscoveryTestSuite) TestServiceDiscoveryContainerID() {
7676

7777
foundMap := make(map[string]*aggregator.ServiceDiscoveryPayload)
7878
for _, p := range payloads {
79-
name := p.Payload.ServiceName
80-
t.Log("RequestType", p.RequestType, "ServiceName", name)
79+
name := p.Payload.GeneratedServiceName
80+
t.Log("RequestType", p.RequestType, "GeneratedServiceName", name)
8181

8282
if p.RequestType == "start-service" {
8383
foundMap[name] = p

0 commit comments

Comments
 (0)