-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
config_template.yaml
4544 lines (3953 loc) · 193 KB
/
config_template.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{{ if .Common }}
#########################
## Basic Configuration ##
#########################
## @param api_key - string - required
## @env DD_API_KEY - string - required
## The Datadog API key used by your Agent to submit metrics and events to Datadog.
## Create a new API key here: https://app.datadoghq.com/organization-settings/api-keys .
## Read more about API keys here: https://docs.datadoghq.com/account_management/api-app-keys/#api-keys .
api_key:
## @param app_key - string - optional
## The application key used to access Datadog's programatic API.
## Create a new application key here: https://app.datadoghq.com/organization-settings/application-keys .
## Read more about application keys here: https://docs.datadoghq.com/account_management/api-app-keys/#application-keys .
#
# app_key:
## @param site - string - optional - default: datadoghq.com
## @env DD_SITE - string - optional - default: datadoghq.com
## The site of the Datadog intake to send Agent data to.
## Set to 'datadoghq.eu' to send data to the EU site.
## Set to 'us3.datadoghq.com' to send data to the US3 site.
## Set to 'us5.datadoghq.com' to send data to the US5 site.
## Set to 'ap1.datadoghq.com' to send data to the AP1 site.
## Set to 'ddog-gov.com' to send data to the US1-FED site.
#
# site: datadoghq.com
## @param dd_url - string - optional - default: https://app.datadoghq.com
## @env DD_DD_URL - string - optional - default: https://app.datadoghq.com
## @env DD_URL - string - optional - default: https://app.datadoghq.com
## The host of the Datadog intake server to send metrics to, only set this option
## if you need the Agent to send metrics to a custom URL, it overrides the site
## setting defined in "site". It does not affect APM, Logs or Live Process intake which have their
## own "*_dd_url" settings.
## If DD_DD_URL and DD_URL are both set, DD_DD_URL is used in priority.
#
# dd_url: https://app.datadoghq.com
## @param proxy - custom object - optional
## @env DD_PROXY_HTTP - string - optional
## @env DD_PROXY_HTTPS - string - optional
## @env DD_PROXY_NO_PROXY - space separated list of strings - optional
## If you need a proxy to connect to the Internet, provide it here (default:
## disabled). Refer to https://docs.datadoghq.com/agent/proxy/ to understand how to use these settings.
## For Logs proxy information, refer to https://docs.datadoghq.com/agent/proxy/#proxy-for-logs
#
# proxy:
# https: http://<USERNAME>:<PASSWORD>@<PROXY_SERVER_FOR_HTTPS>:<PORT>
# http: http://<USERNAME>:<PASSWORD>@<PROXY_SERVER_FOR_HTTP>:<PORT>
# no_proxy:
# - <HOSTNAME-1>
# - <HOSTNAME-2>
## @param skip_ssl_validation - boolean - optional - default: false
## @env DD_SKIP_SSL_VALIDATION - boolean - optional - default: false
## Setting this option to "true" tells the Agent to skip validation of SSL/TLS certificates.
#
# skip_ssl_validation: false
## @param sslkeylogfile - string - optional - default: ""
## @env DD_SSLKEYLOGFILE - string - optional - default: ""
## sslkeylogfile specifies a destination for TLS master secrets
## in NSS key log format to allow external programs
## such as Wireshark to decrypt TLS connections.
## For more details, see https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Key_Log_Format.
## Use of sslkeylogfile compromises security and should only be
## used for debugging.
# sslkeylogfile: ""
## @param min_tls_version - string - optional - default: "tlsv1.2"
## @env DD_MIN_TLS_VERSION - string - optional - default: "tlsv1.2"
## This option defines the minimum TLS version that will be used when
## submitting data to the Datadog intake specified in "site" or "dd_url".
## This parameter defaults to "tlsv1.2".
## Possible values are: tlsv1.0, tlsv1.1, tlsv1.2, tlsv1.3; values are case-
## insensitive.
#
# min_tls_version: "tlsv1.2"
## @param hostname - string - optional - default: auto-detected
## @env DD_HOSTNAME - string - optional - default: auto-detected
## Force the hostname name.
#
# hostname: <HOSTNAME_NAME>
## @param hostname_file - string - optional
## @env DD_HOSTNAME_FILE - string - optional
## In some environments, auto-detection of the hostname is not adequate and
## environment variables cannot be used to set the value. In such cases, the
## file on the host can also be used provide an appropriate value. If
## 'hostname' value has been set to a non-empty value, this option is ignored.
#
# hostname_file: /var/lib/cloud/data/instance-id
## @param hostname_fqdn - boolean - optional - default: false
## @env DD_HOSTNAME_FQDN - boolean - optional - default: false
## When the Agent relies on the OS to determine the hostname, make it use the
## FQDN instead of the short hostname. Recommended value: true
## More information at https://dtdg.co/flag-hostname-fqdn
#
# hostname_fqdn: false
## @param hostname_trust_uts_namespace - boolean - optional - default: false
## @env DD_HOSTNAME_TRUST_UTS_NAMESPACE - boolean - optional - default: false
## By default the Agent does not trust the hostname value retrieved from non-root UTS namespace,
## as it's usually a generated name, unrelated to the host (e.g. when running in a container).
## When enabled, the Agent will trust the value retrieved from non-root UTS namespace instead of failing
## hostname resolution.
## (Linux only)
#
# hostname_trust_uts_namespace: false
## @param host_aliases - list of strings - optional
## @env DD_HOST_ALIASES - space separated list of strings - optional
## List of host aliases to report in addition to any aliases collected
## automatically from cloud providers.
## More information at
## https://docs.datadoghq.com/agent/faq/how-datadog-agent-determines-the-hostname/?tab=agentv6v7#host-aliases
#
# host_aliases:
# - <ALIAS-1>
# - <ALIAS-2>
## @param tags - list of key:value elements - optional
## @env DD_TAGS - space separated list of strings - optional
## List of host tags. Attached in-app to every metric, event, log, trace, and service check emitted by this Agent.
##
## This configuration value merges with `DD_EXTRA_TAGS`, allowing some
## tags to be set in a configuration file (`tags`), and additional tags to be added
## with an environment variable (`DD_EXTRA_TAGS`).
##
## Learn more about tagging: https://docs.datadoghq.com/tagging/
#
# tags:
# - team:infra
# - <TAG_KEY>:<TAG_VALUE>
## @param extra_tags - list of key:value elements - optional
## @env DD_EXTRA_TAGS - space separated list of strings - optional
## List of host tags. Attached in-app to every metric, event, log, trace, and service check emitted by this Agent.
##
## This configuration value merges with `tags`, allowing some
## tags to be set in a configuration file (`tags`), and additional tags to be added
## with an environment variable (`DD_EXTRA_TAGS`).
##
## Learn more about tagging: https://docs.datadoghq.com/tagging/
#
# extra_tags:
# - region:northerly
# - <TAG_KEY>:<TAG_VALUE>
## @param env - string - optional
## @env DD_ENV - string - optional
## The environment name where the agent is running. Attached in-app to every
## metric, event, log, trace, and service check emitted by this Agent.
#
# env: <environment name>
## @param tag_value_split_separator - map - optional
## @env DD_TAG_VALUE_SPLIT_SEPARATOR - list of key:value strings - optional
## Split tag values according to a given separator. Only applies to host tags,
## and tags coming from container integrations. It does not apply to tags on dogstatsd metrics,
## and tags collected by other integrations.
##
## Example use-case:
##
## With a raw collected tag "foo:1;2;3", using the following configuration:
##
## tag_value_split_separator:
## foo: ;
##
## results in the raw tag being transformed into "foo:1", "foo:2", "foo:3" tags
#
# tag_value_split_separator:
# <TAG_KEY>: <SEPARATOR>
## @param checks_tag_cardinality - string - optional - default: low
## @env DD_CHECKS_TAG_CARDINALITY - string - optional - default: low
## Configure the level of granularity of tags to send for checks metrics and events. Choices are:
## * low: add tags about low-cardinality objects (clusters, hosts, deployments, container images, ...)
## * orchestrator: add tags about pod, (in Kubernetes), or task (in ECS or Mesos) -level of cardinality
## * high: add tags about high-cardinality objects (individual containers, user IDs in requests, ...)
## WARNING: sending container tags for checks metrics may create more metrics
## (one per container instead of one per host). This may impact your custom metrics billing.
#
# checks_tag_cardinality: low
## @param dogstatsd_tag_cardinality - string - optional - default: low
## @env DD_DOGSTATSD_TAG_CARDINALITY - string - optional - default: low
## Configure the level of granularity of tags to send for DogStatsD metrics and events. Choices are:
## * low: add tags about low-cardinality objects (clusters, hosts, deployments, container images, ...)
## * orchestrator: add tags about pod, (in Kubernetes), or task (in ECS or Mesos) -level of cardinality
## * high: add tags about high-cardinality objects (individual containers, user IDs in requests, ...)
##
## WARNING: sending container tags for dogstatsd metrics may create more metrics
## (one per container instead of one per host). This may impact your custom metrics billing.
#
# dogstatsd_tag_cardinality: low
## @param histogram_aggregates - list of strings - optional - default: ["max", "median", "avg", "count"]
## @env DD_HISTOGRAM_AGGREGATES - space separated list of strings - optional - default: max median avg count
## Configure which aggregated value to compute.
## Possible values are: min, max, median, avg, sum and count.
#
# histogram_aggregates:
# - max
# - median
# - avg
# - count
## @param histogram_percentiles - list of strings - optional - default: ["0.95"]
## @env DD_HISTOGRAM_PERCENTILES - space separated list of strings - optional - default: 0.95
## Configure which percentiles are computed by the Agent. It must be a list of float between 0 and 1.
## Warning: percentiles must be specified as yaml strings
#
# histogram_percentiles:
# - "0.95"
## @param histogram_copy_to_distribution - boolean - optional - default: false
## @env DD_HISTOGRAM_COPY_TO_DISTRIBUTION - boolean - optional - default: false
## Copy histogram values to distributions for true global distributions (in beta)
## Note: This increases the number of custom metrics created.
#
# histogram_copy_to_distribution: false
## @param histogram_copy_to_distribution_prefix - string - optional
## @env DD_HISTOGRAM_COPY_TO_DISTRIBUTION_PREFIX - string - optional
## A prefix to add to distribution metrics created when histogram_copy_to_distributions is true
#
# histogram_copy_to_distribution_prefix: "<PREFIX>"
## @param aggregator_stop_timeout - integer - optional - default: 2
## @env DD_AGGREGATOR_STOP_TIMEOUT - integer - optional - default: 2
## When stopping the agent, the Aggregator will try to flush out data ready for
## aggregation (metrics, events, ...). Data are flushed to the Forwarder in order
## to be sent to Datadog, therefore the Agent might take at most
## 'aggregator_stop_timeout'+'forwarder_stop_timeout' seconds to exit.
##
## You can set the maximum amount of time, in seconds, allocated to the
## Aggregator to do so. You can disable this feature by setting
## 'aggregator_stop_timeout' to 0.
#
# aggregator_stop_timeout: 2
## @param aggregator_buffer_size - integer - optional - default: 100
## @env DD_AGGREGATOR_BUFFER_SIZE - integer - optional - default: 100
## The default buffer size for the aggregator use a sane value for most of the
## use cases, however, it could be useful to manually set it in order to trade
## RSS usage with better performances.
#
# aggregator_buffer_size: 100
## @param forwarder_timeout - integer - optional - default: 20
## @env DD_FORWARDER_TIMEOUT - integer - optional - default: 20
## Forwarder timeout in seconds
#
# forwarder_timeout: 20
## @param forwarder_retry_queue_payloads_max_size - integer - optional - default: 15728640 (15MB)
## @env DD_FORWARDER_RETRY_QUEUE_PAYLOADS_MAX_SIZE - integer - optional - default: 15728640 (15MB)
## It defines the maximum size in bytes of all the payloads in the forwarder's retry queue.
## The actual memory used is greater than the payloads size as there are extra fields like HTTP headers,
## but no more than 2.5 times the payload size.
#
# forwarder_retry_queue_payloads_max_size: 15728640
## @param forwarder_num_workers - integer - optional - default: 1
## @env DD_FORWARDER_NUM_WORKERS - integer - optional - default: 1
## The number of workers used by the forwarder.
#
# forwarder_num_workers: 1
## @param forwarder_stop_timeout - integer - optional - default: 2
## @env DD_FORWARDER_STOP_TIMEOUT - integer - optional - default: 2
## When stopping the agent, the Forwarder will try to flush all new
## transactions (not the ones in retry state). New transactions will be created
## as the Aggregator flush it's internal data too, therefore the Agent might take
## at most 'aggregator_stop_timeout'+'forwarder_stop_timeout' seconds to exit.
##
## You can set the maximum amount of time, in seconds, allocated to the
## Forwarder to send those transactions. You can disable this feature by setting
## 'forwarder_stop_timeout' to 0.
#
# forwarder_stop_timeout: 2
## @param forwarder_storage_max_size_in_bytes - integer - optional - default: 0
## @env DD_FORWARDER_STORAGE_MAX_SIZE_IN_BYTES - integer - optional - default: 0
## When the retry queue of the forwarder is full, `forwarder_storage_max_size_in_bytes`
## defines the amount of disk space the Agent can use to store transactions on the disk.
## When `forwarder_storage_max_size_in_bytes` is `0`, the transactions are never stored on the disk.
#
# forwarder_storage_max_size_in_bytes: 50000000
## @param forwarder_storage_max_disk_ratio - float - optional - default: 0.8
## @env DD_FORWARDER_STORAGE_MAX_DISK_RATIO - float - optional - default: 0.8
## `forwarder_storage_max_disk_ratio` defines the disk capacity limit for storing transactions.
## `0.8` means the Agent can store transactions on disk until `forwarder_storage_max_size_in_bytes`
## is reached or when the disk mount for `forwarder_storage_path` exceeds 80% of the disk capacity,
## whichever is lower.
#
# forwarder_storage_max_disk_ratio: 0.8
## @param forwarder_outdated_file_in_days - integer - optional - default: 10
## @env DD_FORWARDER_OUTDATED_FILE_IN_DAYS - integer - optional - default: 10
## This value specifies how many days the overflow transactions will remain valid before
## being discarded. During the Agent restart, if a retry file contains transactions that were
## created more than `forwarder_outdated_file_in_days` days ago, they are removed.
#
# forwarder_outdated_file_in_days: 10
## @param forwarder_high_prio_buffer_size - int - optional - default: 100
## Defines the size of the high prio buffer.
## Increasing the buffer size can help if payload drops occur due to high prio buffer being full.
#
# forwarder_high_prio_buffer_size: 100
## @param forwarder_low_prio_buffer_size - int - optional - default: 100
## Defines the size of the low prio buffer.
#
# forwarder_low_prio_buffer_size: 100
## @param forwarder_requeue_buffer_size - int - optional - default: 100
## Defines the size of the requeue prio buffer.
#
# forwarder_requeue_buffer_size: 100
## @param forwarder_backoff_base - int - optional - default: 2
## @env DD_FORWARDER_BACKOFF_BASE - integer - optional - default: 2
## Defines the rate of exponential growth, and the first retry interval range.
## Do not set a lower value than the default. You may increase it if you use a proxy that benefits from a
## higher rate of exponential growth.
# forwarder_backoff_base: 2
## @param forwarder_backoff_max - int - optional - default: 64
## @env DD_FORWARDER_BACKOFF_MAX - integer - optional - default: 64
## Defines the maximum number of seconds to wait for a retry.
## Do not set a lower value than the default. You may increase it if you use a proxy that benefits from a
## higher maximum backoff time.
# forwarder_backoff_max: 64
## @param cloud_provider_metadata - list of strings - optional - default: ["aws", "gcp", "azure", "alibaba", "oracle", "ibm"]
## @env DD_CLOUD_PROVIDER_METADATA - space separated list of strings - optional - default: aws gcp azure alibaba oracle ibm
## This option restricts which cloud provider endpoint will be used by the
## agent to retrieve metadata. By default the agent will try # AWS, GCP, Azure
## and alibaba providers. Some cloud provider are not enabled by default to not
## trigger security alert when querying unknown IP (for example, when enabling
## Tencent on AWS).
## Setting an empty list will disable querying any cloud metadata endpoints
## (falling back on system metadata). Disabling metadata for the cloud provider in which an Agent runs may result in
## duplicated hosts in your Datadog account and missing Autodiscovery features
##
## Possible values are:
## "aws" AWS EC2, ECS/Fargate
## "gcp" Google Cloud Provider
## "azure" Azure
## "alibaba" Alibaba
## "tencent" Tencent
## "oracle" Oracle Cloud
## "ibm" IBM Cloud
#
# cloud_provider_metadata:
# - "aws"
# - "gcp"
# - "azure"
# - "alibaba"
# - "oracle"
# - "ibm"
## @param collect_ec2_tags - boolean - optional - default: false
## @env DD_COLLECT_EC2_TAGS - boolean - optional - default: false
## Collect AWS EC2 custom tags as host tags.
## Requires one of:
## - `collect_ec2_tags_use_imds: true` and configuration of the
## EC2 instance to allow tags in instance metadata; or
## - configuration of the EC2 instance to have an IAM role with
## the `EC2:DescribeTags` permission.
## See docs for further details:
## https://docs.datadoghq.com/integrations/faq/how-do-i-pull-my-ec2-tags-without-using-the-aws-integration/
#
# collect_ec2_tags: false
## @param exclude_ec2_tags - list of strings - optional - default: []
## @env DD_EXCLUDE_EC2_TAGS - space separated list of strings - optional - default: []
## EC2 tags to exclude from being converted into host tags -- only applicable when collect_ec2_tags is true. This does
## not impact tags collected by the AWS Integration (see https://docs.datadoghq.com/integrations/amazon_web_services/
## for more information on the AWS integration).
#
# exclude_ec2_tags: []
## @param collect_ec2_tags_use_imds - boolean - optional - default: false
## @env DD_COLLECT_EC2_TAGS_USE_IMDS - boolean - optional - default: false
## Use instance metadata service (IMDS) instead of EC2 API to collect AWS EC2 custom tags.
## Requires `collect_ec2_tags`.
#
# collect_ec2_tags_use_imds: false
## @param ec2_metadata_timeout - integer - optional - default: 300
## @env DD_EC2_METADATA_TIMEOUT - integer - optional - default: 300
## Timeout in milliseconds on calls to the AWS EC2 metadata endpoints.
#
# ec2_metadata_timeout: 300
## @param ec2_prefer_imdsv2 - boolean - optional - default: false
## @env DD_EC2_PREFER_IMDSV2 - boolean - optional - default: false
## If this flag is true then the agent will request EC2 metadata using IMDS v2,
## which offers additional security for accessing metadata. However, in some
## situations (such as a containerized agent on a plain EC2 instance) it may
## require additional configuration on the AWS side. See the AWS guidelines
## for further details:
## https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html#instance-metadata-transition-to-version-2
#
# ec2_prefer_imdsv2: false
## @param collect_gce_tags - boolean - optional - default: true
## @env DD_COLLECT_GCE_TAGS - boolean - optional - default: true
## Collect Google Cloud Engine metadata as host tags
#
# collect_gce_tags: true
## @param exclude_gce_tags - list of strings - optional - default: ["bosh_settings" ,"cli-cert" ,"common-psm1" ,"configure-sh" ,"containerd-configure-sh" ,"disable-address-manager" ,"disable-legacy-endpoints" ,"enable-oslogin" ,"gce-container-declaration" ,"google-container-manifest" ,"ipsec-cert" ,"k8s-node-setup-psm1" ,"kube-env" ,"kubeconfig" ,"kubelet-config" ,"serial-port-logging-enable" ,"shutdown-script" ,"ssh-keys" ,"sshKeys" ,"ssl-cert" ,"startup-script" ,"user-data" ,"windows-keys" ,"windows-startup-script-ps1"]
## @env DD_EXCLUDE_GCE_TAGS - space separated list of strings - optional - default: bosh_settings cli-cert common-psm1 configure-sh containerd-configure-sh disable-address-manager disable-legacy-endpoints enable-oslogin gce-container-declaration google-container-manifest ipsec-cert k8s-node-setup-psm1 kube-env kubeconfig kubelet-config serial-port-logging-enable shutdown-script ssh-keys sshKeys ssl-cert startup-script user-data windows-keys windows-startup-script-ps1
## Google Cloud Engine metadata attribute to exclude from being converted into
## host tags -- only applicable when collect_gce_tags is true.
#
# exclude_gce_tags:
# - "bosh_settings"
# - "cli-cert"
# - "common-psm1"
# - "configure-sh"
# - "containerd-configure-sh"
# - "disable-address-manager"
# - "disable-legacy-endpoints"
# - "enable-oslogin"
# - "gce-container-declaration"
# - "google-container-manifest"
# - "ipsec-cert"
# - "k8s-node-setup-psm1"
# - "kube-env"
# - "kubeconfig"
# - "kubelet-config"
# - "serial-port-logging-enable"
# - "shutdown-script"
# - "ssh-keys"
# - "sshKeys"
# - "ssl-cert"
# - "startup-script"
# - "user-data"
# - "windows-keys"
# - "windows-startup-script-ps1"
## @param gce_send_project_id_tag - bool - optional - default: false
## @env DD_GCE_SEND_PROJECT_ID_TAG - bool - optional - default: false
## Send the project ID host tag with the `project_id:` tag key in addition to
## the `project:` tag key.
#
# gce_send_project_id_tag: false
## @param gce_metadata_timeout - integer - optional - default: 1000
## @env DD_GCE_METADATA_TIMEOUT - integer - optional - default: 1000
## Timeout in milliseconds on calls to the GCE metadata endpoints.
#
# gce_metadata_timeout: 1000
## @param azure_hostname_style - string - optional - default: "os"
## @env DD_AZURE_HOSTNAME_STYLE - string - optional - default: "os"
## Changes how agent hostname is set on Azure virtual machines.
##
## Possible values:
## "os" - use the hostname reported by the operating system (default)
## "name" - use the instance name
## "name_and_resource_group" - use a combination of the instance name and resource group name
## "full" - use a combination of the instance name, resource group name and subscription id
## "vmid" - use the instance id
#
# azure_hostname_style: "os"
## @param scrubber - custom object - optional
## Configuration for scrubbing sensitive information from the Agent's logs, configuration and flares.
#
# scrubber:
#
## @param scrubber.additional_keys - list of strings - optional
## @env DD_SCRUBBER_ADDITIONAL_KEYS - space-separated list of strings - optional
## By default, the Agent removes known sensitive keys from Agent and integrations YAML configs before
## including them in the flare.
## Use this parameter to define additional sensitive keys that the Agent should scrub from
## the YAML files included in the flare.
#
# additional_keys:
# - "sensitive_key_1"
# - "sensitive_key_2"
## @param no_proxy_nonexact_match - boolean - optional - default: false
## @env DD_NO_PROXY_NONEXACT_MATCH - boolean - optional - default: false
## Enable more flexible no_proxy matching. See https://godoc.org/golang.org/x/net/http/httpproxy#Config
## for more information on accepted matching criteria.
#
# no_proxy_nonexact_match: false
## @param use_proxy_for_cloud_metadata - boolean - optional - default: false
## @env DD_USE_PROXY_FOR_CLOUD_METADATA - boolean - optional - default: false
## By default cloud provider IP's are added to the transport's `no_proxy` list.
## Use this parameter to remove them from the `no_proxy` list.
#
# use_proxy_for_cloud_metadata: false
## @param inventories_configuration_enabled - boolean - optional - default: true
## @env DD_INVENTORIES_CONFIGURATION_ENABLED - boolean - optional - default: true
## By default the Agent sends its own configuration to Datadog to be displayed in the `Agent Configuration` section of the host
## detail panel. See https://docs.datadoghq.com/infrastructure/list/#agent-configuration for more information.
##
## The Agent configuration is scrubbed of any sensitive information.
#
# inventories_configuration_enabled: true
## @param auto_exit - custom object - optional
## Configuration for the automatic exit mechanism: the Agent stops when some conditions are met.
#
# auto_exit:
## @param noprocess - custom object - optional
## Configure the `noprocess` automatic exit method.
## Detect when no other processes (non-agent) are running to trigger automatic exit. `HOST_PROC` is taken into account when gathering processes.
## Feature is only supported on POSIX systems.
#
# noprocess:
## @param enabled - boolean - optional - default: false
## @env DD_AUTO_EXIT_NOPROCESS_ENABLED - boolean - optional - default: false
## Enable the `noprocess` method
#
# enabled: false
## @param excluded_processes - list of strings - optional
## @env DD_AUTO_EXIT_NOPROCESS_EXCLUDED_PROCESSES - space separated list of strings - optional
## List of regular expressions to exclude extra processes (on top of built-in list).
#
# excluded_processes: []
## @param validation_period - integer - optional - default: 60
## @env DD_AUTO_EXIT_VALIDATION_PERIOD - integer - optional - default: 60
## Time (in seconds) delay during which the auto exit validates that the selected method continuously detects an exit condition, before exiting.
## The value is verified every 30s. By default, three consecutive checks need to return true to trigger an automatic exit.
#
# validation_period: 60
## @param fips - custom object - optional
## [BETA] Enter specific configurations for using the FIPS proxy.
## Uncomment this parameter and the one below to enable them.
#
# fips:
## @param enabled - boolean - optional - default: false
## @env DD_FIPS_ENABLED - boolean - optional - default: false
## This feature is in BETA.
##
## Enable the use of the FIPS proxy to send data to the DataDog backend. Enabling this will force all outgoing traffic
## from the Agent to the local proxy.
## It's important to note that enabling this will not make the Datadog Agent FIPS compliant, but will force all outgoing
## traffic to a local FIPS compliant proxy. The FIPS proxy need to be installed locally in addition to the agent.
##
## When setting this to true the following settings would be overridden, ignoring the values from the
## configuration:
## - dd_url
## - apm_config.apm_dd_url
## - apm_config.profiling_dd_url
## - apm_config.telemetry.dd_url
## - process_config.process_dd_url
## - logs_config.use_http
## - logs_config.logs_no_ssl
## - logs_config.logs_dd_url
## - database_monitoring.metrics.dd_url
## - database_monitoring.activity.dd_url
## - database_monitoring.samples.dd_url
## - compliance_config.endpoints.dd_url
## - runtime_security_config.endpoints.dd_url
## - network_devices.metadata.dd_url
#
## The agent will also ignore 'proxy.*' settings and environment variables related to proxy (HTTP_PROXY, HTTPS_PROXY,
## DD_PROXY_HTTP and DD_PROXY_HTTPS).
#
# enabled: false
## @param local_address - string - optional - default: localhost
## @env DD_FIPS_LOCAL_ADDRESS - string - optional - default: localhost
## The local address that the FIPS proxy will bind ports on.
#
# local_address: localhost
## @param observability_pipelines_worker - custom object - optional
## Configuration for forwarding telemetry to an Observability Pipelines Worker instead of Datadog.
## https://www.datadoghq.com/product/observability-pipelines/
## Note: This config is interchangeable with `vector`
#
# observability_pipelines_worker:
## @param metrics - custom object - optional
## Specific configurations for metrics
#
# metrics:
## @param enabled - boolean - optional - default: false
## @env DD_OBSERVABILITY_PIPELINES_WORKER_METRICS_ENABLED - boolean - optional - default: false
## Enables forwarding of metrics to an Observability Pipelines Worker
#
# enabled: false
## @param url - string - optional - default: ""
## @env DD_OBSERVABILITY_PIPELINES_WORKER_METRICS_URL - string - optional - default: ""
## URL endpoint for the Observability Pipelines Worker to send metrics to
#
# url: "http//127.0.0.1:8080"
## @param logs - custom object - optional
## Specific configurations for logs
#
# logs:
## @param enabled - boolean - optional - default: false
## @env DD_OBSERVABILITY_PIPELINES_WORKER_LOGS_ENABLED - boolean - optional - default: false
## Enables forwarding of logs to an Observability Pipelines Worker
#
# enabled: false
## @param url - string - optional - default: ""
## @env DD_OBSERVABILITY_PIPELINES_WORKER_LOGS_URL - string - optional - default: ""
## URL endpoint for the Observability Pipelines Worker to send logs to
#
# url: "http//127.0.0.1:8080"
## @param traces - custom object - optional
## Specific configurations for traces
#
# traces:
## @param enabled - boolean - optional - default: false
## @env DD_OBSERVABILITY_PIPELINES_WORKER_TRACES_ENABLED - boolean - optional - default: false
## Enables forwarding of traces to an Observability Pipelines Worker
#
# enabled: false
## @param url - string - optional - default: ""
## @env DD_OBSERVABILITY_PIPELINES_WORKER_TRACES_URL - string - optional - default: ""
## URL endpoint for the Observability Pipelines Worker to send traces to
#
# url: "http//127.0.0.1:8080"
{{ end }}
{{- if .Agent }}
{{- if .Python }}
{{- if .BothPythonPresent -}}
## @param python_version - integer - optional - default: 2
## @env DD_PYTHON_VERSION - integer - optional - default: 2
## The major version of Python used to run integrations and custom checks.
## The only supported values are 2 (to use Python 2) or 3 (to use Python 3).
## Do not change this option when using the official Docker Agent images.
#
# python_version: 2
{{ end -}}
{{ end }}
############################
## Advanced Configuration ##
############################
## @param confd_path - string - optional
## @env DD_CONFD_PATH - string - optional
## The path containing check configuration files. By default, uses the conf.d folder
## located in the Agent configuration folder.
#
# confd_path: ""
## @param additional_checksd - string - optional
## @env DD_ADDITIONAL_CHECKSD - string - optional
## Additional path indicating where to search for Python checks. By default, uses the checks.d folder
## located in the Agent configuration folder.
#
# additional_checksd: <CHECKD_FOLDER_PATH>
## @param expvar_port - integer - optional - default: 5000
## @env DD_EXPVAR_PORT - integer - optional - default: 5000
## The port for the go_expvar server.
#
# expvar_port: 5000
## @param cmd_port - integer - optional - default: 5001
## @env DD_CMD_PORT - integer - optional - default: 5001
## The port on which the IPC api listens.
#
# cmd_port: 5001
## @param GUI_port - integer - optional
## @env DD_GUI_PORT - integer - optional
## The port for the browser GUI to be served.
## Setting 'GUI_port: -1' turns off the GUI completely
## Default is:
## * Windows & macOS : `5002`
## * Linux: `-1`
##
#
# GUI_port: <GUI_PORT>
## @param GUI_session_expiration - duration - optional
## @env GUI_SESSION_EXPIRATION - duration - optional
## The duration after which a GUI session will expire.
## Setting 'GUI_SESSION_EXPIRATION: 0' disable session expiration.
## Default is "0s" (sessions do not expire).
#
# GUI_session_expiration: <SESSION_EXPIRATION_DURATION>
## @param health_port - integer - optional - default: 0
## @env DD_HEALTH_PORT - integer - optional - default: 0
## The Agent can expose its health check on a dedicated http port.
## This is useful for orchestrators that support http probes.
## Default is 0 (disabled), set a valid port number (eg. 5555) to enable.
#
# health_port: 0
## @param check_runners - integer - optional - default: 4
## @env DD_CHECK_RUNNERS - integer - optional - default: 4
## The `check_runners` refers to the number of concurrent check runners available for check instance execution.
## The scheduler attempts to spread the instances over the collection interval and will _at most_ be
## running the number of check runners instances concurrently.
## Setting the value to 1 would result in checks running sequentially.
##
## This is a sensitive setting, and we do NOT recommend changing the default number
## of check runners in the general case. The level of concurrency has effects on
## the Agent's: RSS memory, CPU load, resource contention overhead, etc.
#
# check_runners: 4
## @param enable_metadata_collection - boolean - optional - default: true
## @env DD_ENABLE_METADATA_COLLECTION - boolean - optional - default: true
## Metadata collection should always be enabled, except if you are running several
## agents/dsd instances per host. In that case, only one Agent should have it on.
## WARNING: disabling it on every Agent leads to display and billing issues.
#
# enable_metadata_collection: true
## @param enable_gohai - boolean - optional - default: true
## @env DD_ENABLE_GOHAI - boolean - optional - default: true
## Enable the gohai collection of systems data.
#
# enable_gohai: true
## @param enable_signing_metadata_collection - boolean - optional - default: true
## @env DD_ENABLE_SIGNING_METADATA_COLLECTION - boolean - optional - default: true
## Enable the Linux package signing medatada collection.
#
# enable_signing_metadata_collection: true
## @param server_timeout - integer - optional - default: 30
## @env DD_SERVER_TIMEOUT - integer - optional - default: 30
## IPC api server timeout in seconds.
#
# server_timeout: 30
## @param procfs_path - string - optional
## @env DD_PROCFS_PATH - string - optional
## Some environments may have the procfs file system mounted in a miscellaneous
## location. The procfs_path configuration parameter provides a mechanism to
## override the standard default location: '/proc' - this setting trickles down to
## integrations and affect their behavior if they rely on the psutil python package.
#
# procfs_path: <PROCFS_PATH>
{{ if .Python }}
## @param disable_py3_validation - boolean - optional - default: false
## @env DD_DISABLE_PY3_VALIDATION - boolean - optional - default: false
## Disable Python3 validation of python checks.
#
# disable_py3_validation: false
#
## @param python3_linter_timeout - integer - optional - default: 120
## @env DD_PYTHON3_LINTER_TIMEOUT - integer - optional - default: 120
## Timeout in seconds for validation of compatibility with python 3 when running python 2.
#
# python3_linter_timeout: 120
## @param memtrack_enabled - boolean - optional - default: true
## @env DD_MEMTRACK_ENABLED - boolean - optional - default: true
## Enables tracking of memory allocations made from the python runtime loader.
#
# memtrack_enabled: true
## @param tracemalloc_debug - boolean - optional - default: false
## @env DD_TRACEMALLOC_DEBUG - boolean - optional - default: false
## Enables debugging with tracemalloc for python checks.
## Please note that this option is only available when python_version is set to "3".
## Additionally when this option becomes effective the number of check runners is
## overridden to 1.
#
# tracemalloc_debug: false
## @param tracemalloc_include - string - optional
## @env DD_TRACEMALLOC_INCLUDE - string - optional
## Comma-separated list of Python checks to enable tracemalloc for when `tracemalloc_debug` is true.
## By default, all Python checks are enabled.
#
# tracemalloc_include: <TRACEMALLOC_EXCLUDE>
## @param tracemalloc_exclude - string - optional
## @env DD_TRACEMALLOC_EXCLUDE - string - optional
## Comma-separated list of Python checks to disable tracemalloc for when `tracemalloc_debug` is true.
## By default, all Python checks are enabled. This setting takes precedence over `tracemalloc_include`.
#
# tracemalloc_exclude: <TRACEMALLOC_INCLUDE>
## @param windows_use_pythonpath - boolean - optional
## @env DD_WINDOWS_USE_PYTHONPATH - boolean - optional
## Whether to honour the value of the PYTHONPATH env var when set on Windows.
## Disabled by default, so we only load Python libraries bundled with the Agent.
#
# windows_use_pythonpath: false
{{ end }}
## @param secret_backend_command - string - optional
## @env DD_SECRET_BACKEND_COMMAND - string - optional
## `secret_backend_command` is the path to the script to execute to fetch secrets.
## The executable must have specific rights that differ on Windows and Linux.
##
## For more information see: https://github.com/DataDog/datadog-agent/blob/main/docs/agent/secrets.md
#
# secret_backend_command: <COMMAND_PATH>
## @param secret_backend_arguments - list of strings - optional
## @env DD_SECRET_BACKEND_ARGUMENTS - space separated list of strings - optional
## If secret_backend_command is set, specify here a list of arguments to give to the command at each run.
#
# secret_backend_arguments:
# - <ARGUMENT_1>
# - <ARGUMENT_2>
## @param secret_backend_output_max_size - integer - optional - default: 1048576
## @env DD_SECRET_BACKEND_OUTPUT_MAX_SIZE - integer - optional - default: 1048576
## The size in bytes of the buffer used to store the command answer (apply to both stdout and stderr)
#
# secret_backend_output_max_size: 1048576
## @param secret_backend_timeout - integer - optional - default: 30
## @env DD_SECRET_BACKEND_TIMEOUT - integer - optional - default: 30
## The timeout to execute the command in second
#
# secret_backend_timeout: 30
## @param secret_backend_skip_checks - boolean - optional - default: false
## @env DD_SECRET_BACKEND_SKIP_CHECKS - boolean - optional - default: false
## Disable fetching secrets for check configurations
#
# secret_backend_skip_checks: false
#
## @param secret_backend_remove_trailing_line_break - boolean - optional - default: false
## @env DD_SECRET_BACKEND_REMOVE_TRAILING_LINE_BREAK - boolean - optional - default: false
## Remove trailing line breaks from secrets returned by the secret_backend_command. Some secret management tools automatically
## add a line break when exporting secrets through files.
#
# secret_backend_remove_trailing_line_break: false
{{- if .InternalProfiling -}}
## @param profiling - custom object - optional
## Enter specific configurations for internal profiling.
##
## Please note that:
## 1. This does *not* enable profiling for user applications.
## 2. This only enables internal profiling of the agent go runtime.
## 3. To enable profiling for user apps please refer to
## https://docs.datadoghq.com/tracing/profiling/
## 4. Enabling this feature will incur in billing charges and other
## unexpected side-effects (ie. agent profiles showing with your
## services).
##
## Uncomment this parameter and the one below to enable profiling.
#
# internal_profiling:
#
## @param enabled - boolean - optional - default: false
## @env DD_INTERNAL_PROFILING_ENABLED - boolean - optional - default: false
## Enable internal profiling for the Agent process.
#
# enabled: false
{{ end }}
{{ end -}}
{{- if .LogsAgent }}
##################################
## Log collection Configuration ##
##################################
## @param logs_enabled - boolean - optional - default: false
## @env DD_LOGS_ENABLED - boolean - optional - default: false
## Enable Datadog Agent log collection by setting logs_enabled to true.
#
# logs_enabled: false
## @param logs_config - custom object - optional
## Enter specific configurations for your Log collection.
## Uncomment this parameter and the one below to enable them.
## See https://docs.datadoghq.com/agent/logs/
#
# logs_config:
## @param container_collect_all - boolean - optional - default: false
## @env DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL - boolean - optional - default: false
## Enable container log collection for all the containers (see ac_exclude to filter out containers)
#
# container_collect_all: false
## @param logs_dd_url - string - optional
## @env DD_LOGS_CONFIG_LOGS_DD_URL - string - optional
## Define the endpoint and port to hit when using a proxy for logs. The logs are forwarded in TCP
## therefore the proxy must be able to handle TCP connections.
#
# logs_dd_url: <ENDPOINT>:<PORT>
## @param logs_no_ssl - boolean - optional - default: false
## @env DD_LOGS_CONFIG_LOGS_NO_SSL - optional - default: false
## Disable the SSL encryption. This parameter should only be used when logs are
## forwarded locally to a proxy. It is highly recommended to then handle the SSL encryption
## on the proxy side.
#
# logs_no_ssl: false
## @param processing_rules - list of custom objects - optional
## @env DD_LOGS_CONFIG_PROCESSING_RULES - list of custom objects - optional
## Global processing rules that are applied to all logs. The available rules are
## "exclude_at_match", "include_at_match" and "mask_sequences". More information in Datadog documentation:
## https://docs.datadoghq.com/agent/logs/advanced_log_collection/#global-processing-rules
#
# processing_rules:
# - type: <RULE_TYPE>
# name: <RULE_NAME>
# pattern: <RULE_PATTERN>
## @param force_use_http - boolean - optional - default: false
## @env DD_LOGS_CONFIG_FORCE_USE_HTTP - boolean - optional - default: false
## By default, the Agent sends logs in HTTPS batches to port 443 if HTTPS connectivity can
## be established at Agent startup, and falls back to TCP otherwise. Set this parameter to `true` to
## always send logs with HTTPS (recommended).
## Warning: force_use_http means HTTP over TCP, not HTTP over HTTPS. Please use logs_no_ssl for HTTP over HTTPS.
#
# force_use_http: true
## @param force_use_tcp - boolean - optional - default: false
## @env DD_LOGS_CONFIG_FORCE_USE_TCP - boolean - optional - default: false
## By default, logs are sent through HTTPS if possible, set this parameter
## to `true` to always send logs via TCP. If `force_use_http` is set to `true`, this parameter
## is ignored.
#
# force_use_tcp: true
## @param use_compression - boolean - optional - default: true
## @env DD_LOGS_CONFIG_USE_COMPRESSION - boolean - optional - default: true
## This parameter is available when sending logs with HTTPS. If enabled, the Agent
## compresses logs before sending them.
#
# use_compression: true
## @param compression_level - integer - optional - default: 6
## @env DD_LOGS_CONFIG_COMPRESSION_LEVEL - boolean - optional - default: false
## The compression_level parameter accepts values from 0 (no compression)
## to 9 (maximum compression but higher resource usage). Only takes effect if
## `use_compression` is set to `true`.
#
# compression_level: 6
## @param batch_wait - integer - optional - default: 5
## @env DD_LOGS_CONFIG_BATCH_WAIT - integer - optional - default: 5
## The maximum time (in seconds) the Datadog Agent waits to fill each batch of logs before sending.
#
# batch_wait: 5
## @param open_files_limit - integer - optional - default: 500
## @env DD_LOGS_CONFIG_OPEN_FILES_LIMIT - integer - optional - default: 500
## The maximum number of files that can be tailed in parallel.
## Note: the default for Mac OS is 200. The default for
## all other systems is 500.
#
# open_files_limit: 500
## @param file_wildcard_selection_mode - string - optional - default: `by_name`
## @env DD_LOGS_CONFIG_FILE_WILDCARD_SELECTION_MODE - string - optional - default: `by_name`
## The strategy used to prioritize wildcard matches if they exceed the open file limit.
##
## Choices are `by_name` and `by_modification_time`.
##
## `by_name` means that each log source is considered and the matching files are ordered
## in reverse name order. While there are less than `logs_config.open_files_limit` files
## being tailed, this process repeats, collecting from each configured source.
##
## `by_modification_time` takes all log sources and first adds any log sources that
## point to a specific file. Next, it finds matches for all wildcard sources.