@@ -184,23 +184,255 @@ collectors:
184184 runAsGroup : 0
185185 scrape_configs_file : " "
186186 config :
187+ connectors :
188+ signaltometrics :
189+ logs :
190+ - name : service_summary
191+ include_resource_attributes :
192+ - key : service.name
193+ - key : deployment.environment # service.environment
194+ - key : telemetry.sdk.language # service.language.name
195+ - key : agent.name # set via elastictraceprocessor
196+ attributes :
197+ - key : metricset.name
198+ default_value : service_summary
199+ sum :
200+ value : " 1"
201+ datapoints :
202+ - name : service_summary
203+ include_resource_attributes :
204+ - key : service.name
205+ - key : deployment.environment # service.environment
206+ - key : telemetry.sdk.language # service.language.name
207+ - key : agent.name # set via elastictraceprocessor
208+ attributes :
209+ - key : metricset.name
210+ default_value : service_summary
211+ sum :
212+ value : " 1"
213+ spans :
214+ - name : service_summary
215+ include_resource_attributes :
216+ - key : service.name
217+ - key : deployment.environment # service.environment
218+ - key : telemetry.sdk.language # service.language.name
219+ - key : agent.name # set via elastictraceprocessor
220+ attributes :
221+ - key : metricset.name
222+ default_value : service_summary
223+ sum :
224+ value : Int(AdjustedCount())
225+ - name : transaction.duration.histogram
226+ description : APM service transaction aggregated metrics as histogram
227+ include_resource_attributes :
228+ - key : service.name
229+ - key : deployment.environment # service.environment
230+ - key : telemetry.sdk.language # service.language.name
231+ - key : agent.name # set via elastictraceprocessor
232+ attributes :
233+ - key : transaction.root
234+ - key : transaction.type
235+ - key : metricset.name
236+ default_value : service_transaction
237+ - key : elasticsearch.mapping.hints
238+ default_value : [_doc_count]
239+ unit : us
240+ exponential_histogram :
241+ value : Microseconds(end_time - start_time)
242+ - name : transaction.duration.summary
243+ description : APM service transaction aggregated metrics as summary
244+ include_resource_attributes :
245+ - key : service.name
246+ - key : deployment.environment # service.environment
247+ - key : telemetry.sdk.language # service.language.name
248+ - key : agent.name # set via elastictraceprocessor
249+ attributes :
250+ - key : transaction.root
251+ - key : transaction.type
252+ - key : metricset.name
253+ default_value : service_transaction
254+ - key : elasticsearch.mapping.hints
255+ default_value : [aggregate_metric_double]
256+ unit : us
257+ histogram :
258+ buckets : [1]
259+ value : Microseconds(end_time - start_time)
260+ - name : transaction.duration.histogram
261+ description : APM transaction aggregated metrics as histogram
262+ ephemeral_resource_attribute : true
263+ include_resource_attributes :
264+ - key : service.name
265+ - key : deployment.environment # service.environment
266+ - key : telemetry.sdk.language # service.language.name
267+ - key : agent.name # set via elastictraceprocessor
268+ - key : container.id
269+ - key : k8s.pod.name
270+ - key : service.version
271+ - key : service.instance.id # service.node.name
272+ - key : process.runtime.name # service.runtime.name
273+ - key : process.runtime.version # service.runtime.version
274+ - key : telemetry.sdk.version # service.language.version??
275+ - key : host.name
276+ - key : os.type # host.os.platform
277+ - key : faas.instance
278+ - key : faas.name
279+ - key : faas.version
280+ - key : cloud.provider
281+ - key : cloud.region
282+ - key : cloud.availability_zone
283+ - key : cloud.platform # cloud.servicename
284+ - key : cloud.account.id
285+ attributes :
286+ - key : transaction.root
287+ - key : transaction.name
288+ - key : transaction.type
289+ - key : transaction.result
290+ - key : event.outcome
291+ - key : metricset.name
292+ default_value : transaction
293+ - key : elasticsearch.mapping.hints
294+ default_value : [_doc_count]
295+ unit : us
296+ exponential_histogram :
297+ value : Microseconds(end_time - start_time)
298+ - name : transaction.duration.summary
299+ description : APM transaction aggregated metrics as summary
300+ ephemeral_resource_attribute : true
301+ include_resource_attributes :
302+ - key : service.name
303+ - key : deployment.environment # service.environment
304+ - key : telemetry.sdk.language # service.language.name
305+ - key : agent.name # set via elastictraceprocessor
306+ - key : container.id
307+ - key : k8s.pod.name
308+ - key : service.version
309+ - key : service.instance.id # service.node.name
310+ - key : process.runtime.name # service.runtime.name
311+ - key : process.runtime.version # service.runtime.version
312+ - key : telemetry.sdk.version # service.language.version??
313+ - key : host.name
314+ - key : os.type # host.os.platform
315+ - key : faas.instance
316+ - key : faas.name
317+ - key : faas.version
318+ - key : cloud.provider
319+ - key : cloud.region
320+ - key : cloud.availability_zone
321+ - key : cloud.platform # cloud.servicename
322+ - key : cloud.account.id
323+ attributes :
324+ - key : transaction.root
325+ - key : transaction.name
326+ - key : transaction.type
327+ - key : transaction.result
328+ - key : event.outcome
329+ - key : metricset.name
330+ default_value : transaction
331+ - key : elasticsearch.mapping.hints
332+ default_value : [aggregate_metric_double]
333+ unit : us
334+ histogram :
335+ buckets : [1]
336+ value : Microseconds(end_time - start_time)
337+ - name : span.destination.service.response_time.sum.us
338+ description : APM span destination metrics
339+ ephemeral_resource_attribute : true
340+ include_resource_attributes :
341+ - key : service.name
342+ - key : deployment.environment # service.environment
343+ - key : telemetry.sdk.language # service.language.name
344+ - key : agent.name # set via elastictraceprocessor
345+ attributes :
346+ - key : span.name
347+ - key : event.outcome
348+ - key : service.target.type
349+ - key : service.target.name
350+ - key : span.destination.service.resource
351+ - key : metricset.name
352+ default_value : service_destination
353+ unit : us
354+ sum :
355+ value : Double(Microseconds(end_time - start_time))
356+ - name : span.destination.service.response_time.count
357+ description : APM span destination metrics
358+ ephemeral_resource_attribute : true
359+ include_resource_attributes :
360+ - key : service.name
361+ - key : deployment.environment # service.environment
362+ - key : telemetry.sdk.language # service.language.name
363+ - key : agent.name # set via elastictraceprocessor
364+ attributes :
365+ - key : span.name
366+ - key : event.outcome
367+ - key : service.target.type
368+ - key : service.target.name
369+ - key : span.destination.service.resource
370+ - key : metricset.name
371+ default_value : service_destination
372+ sum :
373+ value : Int(AdjustedCount())
374+ # event.success_count is populated using 2 metric definition with different conditions
375+ # and value for the histogram bucket based on event outcome. Both metric definition
376+ # are created using same name and attribute and will result in a single histogram.
377+ # We use mapping hint of aggregate_metric_double, so, only the sum and the count
378+ # values are required and the actual histogram bucket is ignored.
379+ - name : event.success_count
380+ description : Success count as a metric for service transaction
381+ include_resource_attributes :
382+ - key : service.name
383+ - key : deployment.environment # service.environment
384+ - key : telemetry.sdk.language # service.language.name
385+ - key : agent.name # set via elastictraceprocessor
386+ attributes :
387+ - key : transaction.root
388+ - key : transaction.type
389+ - key : metricset.name
390+ default_value : service_transaction
391+ - key : elasticsearch.mapping.hints
392+ default_value : [aggregate_metric_double]
393+ conditions :
394+ - attributes["event.outcome"] != nil and attributes["event.outcome"] == "success"
395+ unit : us
396+ histogram :
397+ buckets : [1]
398+ count : Int(AdjustedCount())
399+ value : Int(AdjustedCount())
400+ - name : event.success_count
401+ description : Success count as a metric for service transaction
402+ include_resource_attributes :
403+ - key : service.name
404+ - key : deployment.environment # service.environment
405+ - key : telemetry.sdk.language # service.language.name
406+ - key : agent.name # set via elastictraceprocessor
407+ attributes :
408+ - key : transaction.root
409+ - key : transaction.type
410+ - key : metricset.name
411+ default_value : service_transaction
412+ - key : elasticsearch.mapping.hints
413+ default_value : [aggregate_metric_double]
414+ conditions :
415+ - attributes["event.outcome"] != nil and attributes["event.outcome"] != "success"
416+ unit : us
417+ histogram :
418+ buckets : [0]
419+ count : Int(AdjustedCount())
420+ value : Double(0)
187421 exporters :
188422 debug :
189423 verbosity : basic
190- elasticsearch/apm :
191- endpoints :
192- - ${env:ELASTIC_ENDPOINT}
193- api_key : ${env:ELASTIC_API_KEY}
194- logs_dynamic_index :
195- enabled : true
196- mapping :
197- mode : ecs
198424 elasticsearch/otel :
199425 endpoints :
200426 - ${env:ELASTIC_ENDPOINT}
201427 api_key : ${env:ELASTIC_API_KEY}
428+ metrics_dynamic_index :
429+ enabled : true
202430 logs_dynamic_index :
203431 enabled : true
432+ traces_dynamic_index :
433+ enabled : true
434+ flush :
435+ interval : 10s
204436 # tls:
205437 # insecure_skip_verify: true
206438 mapping :
@@ -215,6 +447,24 @@ collectors:
215447 mode : ecs
216448 processors :
217449 batch : {}
450+ elastictrace :
451+ lsminterval :
452+ intervals :
453+ - duration : 1m
454+ statements :
455+ - set(resource.attributes["metricset.interval"], "1m")
456+ - set(attributes["data_stream.dataset"], Concat([attributes["metricset.name"], "1m"], "."))
457+ - set(attributes["processor.event"], "metric")
458+ - duration : 10m
459+ statements :
460+ - set(resource.attributes["metricset.interval"], "10m")
461+ - set(attributes["data_stream.dataset"], Concat([attributes["metricset.name"], "10m"], "."))
462+ - set(attributes["processor.event"], "metric")
463+ - duration : 60m
464+ statements :
465+ - set(resource.attributes["metricset.interval"], "60m")
466+ - set(attributes["data_stream.dataset"], Concat([attributes["metricset.name"], "60m"], "."))
467+ - set(attributes["processor.event"], "metric")
218468 elasticinframetrics :
219469 add_system_metrics : true
220470 add_k8s_metrics : true
@@ -515,30 +765,43 @@ collectors:
515765 exporters :
516766 - debug
517767 - elasticsearch/ecs
518- metrics/apm :
768+ metrics/otel- apm :
519769 receivers :
520770 - otlp
521771 processors :
522772 - batch
523773 exporters :
524774 - debug
525- - elasticsearch/apm
775+ - signaltometrics
776+ - elasticsearch/otel
526777 logs/apm :
527778 receivers :
528779 - otlp
529780 processors :
530781 - batch
531782 exporters :
532783 - debug
533- - elasticsearch/apm
784+ - signaltometrics
785+ - elasticsearch/otel
534786 traces/apm :
535787 receivers :
536788 - otlp
537789 processors :
538790 - batch
791+ - elastictrace
539792 exporters :
540793 - debug
541- - elasticsearch/apm
794+ - signaltometrics
795+ - elasticsearch/otel
796+ metrics/aggregated-otel-metrics :
797+ receivers :
798+ - signaltometrics
799+ processors :
800+ - batch
801+ - lsminterval
802+ exporters :
803+ - debug
804+ - elasticsearch/otel
542805
543806instrumentation :
544807 name : elastic-instrumentation
0 commit comments