Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
183 commits
Select commit Hold shift + click to select a range
7811eab
adding SA changes
rashmichandrashekar Dec 3, 2020
2a2e62e
changes for new container
rashmichandrashekar Jan 6, 2021
d52c921
reverting SA changes from this branch
rashmichandrashekar Jan 6, 2021
32c1da0
adding container at the right place
rashmichandrashekar Jan 6, 2021
28374fb
bootstrap sidecar container changes
rashmichandrashekar Jan 12, 2021
14a6ceb
merging from ci_dev latest
rashmichandrashekar Jan 12, 2021
e462a98
fixing script
rashmichandrashekar Jan 12, 2021
148a74b
more changes
rashmichandrashekar Jan 13, 2021
09c889c
fix
rashmichandrashekar Jan 13, 2021
0391169
redoing a bit
rashmichandrashekar Jan 14, 2021
7418474
undoing npm
rashmichandrashekar Jan 14, 2021
cd48858
changes to container.conf
rashmichandrashekar Jan 15, 2021
e3921a7
updating telegraf and fluent bit conf
rashmichandrashekar Jan 15, 2021
7ffbbe8
copying files during build
rashmichandrashekar Jan 15, 2021
791b0d3
changes
rashmichandrashekar Jan 15, 2021
8767e7e
changes
rashmichandrashekar Jan 15, 2021
06dea33
changes
rashmichandrashekar Jan 15, 2021
00a9034
adding monitor kub pods
rashmichandrashekar Jan 15, 2021
3f430c9
move configmap parsing to sidecar telegraf
rashmichandrashekar Jan 15, 2021
0210152
more changes
rashmichandrashekar Jan 15, 2021
cd045ae
bug fix in main.sh
rashmichandrashekar Jan 15, 2021
a2e43dd
fixing bug
rashmichandrashekar Jan 16, 2021
c0e0424
adding nil check and some fixes
rashmichandrashekar Jan 16, 2021
9ebee5b
Revert "adding nil check and some fixes"
rashmichandrashekar Jan 16, 2021
1c7be97
bug fixes
rashmichandrashekar Jan 16, 2021
f5d297b
new changes
rashmichandrashekar Jan 20, 2021
490e25e
fixes
rashmichandrashekar Jan 20, 2021
6e6d587
adding pods version to default setting
rashmichandrashekar Jan 20, 2021
064e621
add label and field selectors in config map for custom prom scraping …
gracewehner Jan 20, 2021
b4e4eb2
fix label/field selector defaults
gracewehner Jan 20, 2021
53184e4
adding logs
rashmichandrashekar Jan 20, 2021
616d453
adding more logs
rashmichandrashekar Jan 20, 2021
2515a4d
bug fix for labe; and field selectors
rashmichandrashekar Jan 21, 2021
dfa4264
adding def vars
rashmichandrashekar Jan 21, 2021
8db8133
bug fix
rashmichandrashekar Jan 21, 2021
8c2351a
update telegraf build
rashmichandrashekar Jan 21, 2021
3ab6b18
bug fix for empty array
rashmichandrashekar Jan 21, 2021
c1688e0
move telgraf test to after cadvisor env vars
rashmichandrashekar Jan 21, 2021
344b191
add type check for label and field selectors
gracewehner Jan 22, 2021
9ca455e
use latest telegraf
gracewehner Jan 22, 2021
7345592
add OSM configmap
rashmichandrashekar Jan 22, 2021
b633657
Merge branch 'rashmi/osm' of https://github.com/microsoft/Docker-Prov…
rashmichandrashekar Jan 22, 2021
a662083
changes for OSM configmap
rashmichandrashekar Jan 22, 2021
83fe683
fixing bugs
rashmichandrashekar Jan 23, 2021
b3a7eab
removing comments
rashmichandrashekar Jan 23, 2021
6c6ca2d
configmap parser changes for OSM
rashmichandrashekar Jan 26, 2021
a517d57
more changes for configmap
rashmichandrashekar Jan 26, 2021
3fae90d
fixing bug
rashmichandrashekar Jan 26, 2021
8454561
bug fix
rashmichandrashekar Jan 26, 2021
c588ca6
fixing more bugs
rashmichandrashekar Jan 26, 2021
3dc1055
no osm
rashmichandrashekar Jan 26, 2021
1dbfe4e
bug fix
rashmichandrashekar Jan 27, 2021
cb47723
fixing bugs
rashmichandrashekar Jan 27, 2021
6fdc78e
bug fix
rashmichandrashekar Jan 27, 2021
239c49b
bug fix
rashmichandrashekar Jan 27, 2021
28f9044
bug fix
rashmichandrashekar Jan 27, 2021
bd98690
fixing spaces
rashmichandrashekar Jan 27, 2021
3f4fc22
test changes
rashmichandrashekar Jan 27, 2021
9c657ad
fix
rashmichandrashekar Jan 27, 2021
277f036
some tests
rashmichandrashekar Jan 27, 2021
c1abb67
changes
rashmichandrashekar Jan 28, 2021
5aeec63
conflict changes
rashmichandrashekar Jan 28, 2021
f44266a
update interval for osm sidecar config
rashmichandrashekar Jan 29, 2021
e27c438
get namespaces
rashmichandrashekar Jan 29, 2021
faf2ef0
adding prefix for OSM tags
rashmichandrashekar Jan 29, 2021
4554b52
appmap changes
rashmichandrashekar Feb 2, 2021
cd3b9d9
app map changes
rashmichandrashekar Feb 2, 2021
ef8c802
appmap changes
rashmichandrashekar Feb 2, 2021
b8843c5
changes
rashmichandrashekar Feb 2, 2021
1b3b8b6
changes
rashmichandrashekar Feb 2, 2021
e31f310
changes
rashmichandrashekar Feb 2, 2021
fe11037
changes
rashmichandrashekar Feb 2, 2021
8dfeedb
changes
rashmichandrashekar Feb 2, 2021
efd587c
changes
rashmichandrashekar Feb 2, 2021
9ed7c3e
moving parsers
rashmichandrashekar Feb 2, 2021
2b3a17b
log json
rashmichandrashekar Feb 2, 2021
cfb53c3
more logs
rashmichandrashekar Feb 2, 2021
4f64c72
bug fix
rashmichandrashekar Feb 2, 2021
9a869da
adding additional fields
rashmichandrashekar Feb 3, 2021
3612cb5
fixing bugs
rashmichandrashekar Feb 3, 2021
06b2657
adding some more logs
rashmichandrashekar Feb 3, 2021
491821a
Adding req for telegraf metric
rashmichandrashekar Feb 3, 2021
3ce19dd
more logs
rashmichandrashekar Feb 3, 2021
54eabe9
commenting byte logs
rashmichandrashekar Feb 3, 2021
7ba1aec
changing data in request
rashmichandrashekar Feb 4, 2021
14c0c6d
make dynamic field changes
rashmichandrashekar Feb 4, 2021
d7e5b65
bug fix
rashmichandrashekar Feb 4, 2021
15be8cd
adding log type in the header
rashmichandrashekar Feb 4, 2021
eaa6136
adding al headers
rashmichandrashekar Feb 4, 2021
b620a25
ODS changes
rashmichandrashekar Feb 4, 2021
9f2e9bd
adding api version
rashmichandrashekar Feb 4, 2021
6bea937
modifying app dependency
rashmichandrashekar Feb 4, 2021
743c967
bug fix
rashmichandrashekar Feb 4, 2021
1710d58
changes
rashmichandrashekar Feb 4, 2021
b5cb1ca
changing to generic property bag
rashmichandrashekar Feb 5, 2021
bb274cb
addng header back
rashmichandrashekar Feb 5, 2021
0a76b20
test
rashmichandrashekar Feb 5, 2021
f468647
ch
rashmichandrashekar Feb 5, 2021
974486b
changes
rashmichandrashekar Feb 6, 2021
3db82f7
undoing appmap changes to keep branch clean
rashmichandrashekar Feb 10, 2021
0fa48a6
Merge branch 'rashmi/osm' of https://github.com/microsoft/Docker-Prov…
rashmichandrashekar Feb 10, 2021
1f3f420
undoing oms.go changes
rashmichandrashekar Feb 10, 2021
71081b1
Merge branch 'rashmi/osm' of https://github.com/microsoft/Docker-Prov…
rashmichandrashekar Feb 10, 2021
02a468d
reverting changes for appmap
rashmichandrashekar Feb 10, 2021
9970687
merging from ci_dev
rashmichandrashekar Feb 10, 2021
564ad1b
updating metric names
rashmichandrashekar Feb 11, 2021
f262d49
add forward slash to osm prometheus tag
rashmichandrashekar Feb 11, 2021
5bfa4e4
fixing metric name for latency
rashmichandrashekar Feb 11, 2021
256cfe9
fixing metric name
rashmichandrashekar Feb 11, 2021
651ff8d
moving config replace to its own method
rashmichandrashekar Feb 11, 2021
3700391
adding bytes metrics
rashmichandrashekar Feb 12, 2021
de25b22
bug fix
rashmichandrashekar Feb 12, 2021
4d880b2
telemetry changes
rashmichandrashekar Feb 13, 2021
357281c
fixing formatting
rashmichandrashekar Feb 13, 2021
7e1b148
integer to string
rashmichandrashekar Feb 13, 2021
b517f26
change to integer
rashmichandrashekar Feb 13, 2021
b3a82d9
bug fix
rashmichandrashekar Feb 13, 2021
76625a0
bug fix
rashmichandrashekar Feb 13, 2021
21ae270
fix field and label selector telemetry
gracewehner Feb 18, 2021
fd3f695
Add comments to clarify label/field selector telemetry
gracewehner Feb 19, 2021
87fd6d8
changes to install telegraf on windows container
rashmichandrashekar Feb 23, 2021
efcef9b
Merge branch 'rashmi/osm' of https://github.com/microsoft/Docker-Prov…
rashmichandrashekar Feb 23, 2021
64deacf
creating folder structure
rashmichandrashekar Feb 23, 2021
80aeb44
updating path
rashmichandrashekar Feb 23, 2021
8bc05c9
Running telegraf service
rashmichandrashekar Feb 23, 2021
95af4d4
changes
rashmichandrashekar Feb 24, 2021
30259b9
setting env vars
rashmichandrashekar Feb 24, 2021
d619bb6
fixing pre req script
rashmichandrashekar Feb 24, 2021
8436518
adding null checks
rashmichandrashekar Feb 24, 2021
4482485
configparser changes
rashmichandrashekar Feb 25, 2021
46b5ef5
refactor changes
rashmichandrashekar Feb 25, 2021
f6fc4a4
fixinf defaults
rashmichandrashekar Feb 25, 2021
b928454
script changes for windows
rashmichandrashekar Feb 25, 2021
a1e5db4
adding comment
rashmichandrashekar Feb 25, 2021
56b524e
add kube.conf check to all places in main.sh
rashmichandrashekar Feb 26, 2021
6197e42
binding diff port for monitoring agent conf
rashmichandrashekar Feb 27, 2021
62528cd
update syslog port
rashmichandrashekar Feb 27, 2021
62c6ef6
fixing typo
rashmichandrashekar Feb 27, 2021
258a2d6
updating ports
rashmichandrashekar Mar 1, 2021
be4fa52
adding windows telemetry
rashmichandrashekar Mar 1, 2021
a834912
adding some phased rollout logic
rashmichandrashekar Mar 3, 2021
0e13323
phased rollout changes
rashmichandrashekar Mar 4, 2021
eea93e0
some more
rashmichandrashekar Mar 4, 2021
ef0a030
some changes
rashmichandrashekar Mar 4, 2021
9707bcf
changes
rashmichandrashekar Mar 4, 2021
204806b
some more
rashmichandrashekar Mar 4, 2021
c8a16cc
more changes
rashmichandrashekar Mar 5, 2021
86b7bd3
changes for backcompat
rashmichandrashekar Mar 5, 2021
12a8f5c
changes
rashmichandrashekar Mar 5, 2021
246460d
new telegraf build
rashmichandrashekar Mar 5, 2021
a46ed9a
bug fixes
rashmichandrashekar Mar 5, 2021
6d2d09d
including latest changes
rashmichandrashekar Mar 5, 2021
dd10118
fixing telemetry bug
rashmichandrashekar Mar 6, 2021
998cb08
fix
rashmichandrashekar Mar 6, 2021
1fe5842
fixing osm parsing
rashmichandrashekar Mar 6, 2021
a4deef7
clean up main.sh
rashmichandrashekar Mar 6, 2021
fcb3bc2
bug fix
rashmichandrashekar Mar 6, 2021
de826ae
bug fix
rashmichandrashekar Mar 6, 2021
5ece56c
bug fixes
rashmichandrashekar Mar 8, 2021
c8f2745
changes
rashmichandrashekar Mar 8, 2021
443e784
telemetry bug fix
rashmichandrashekar Mar 9, 2021
abdb59a
adding exception handler
rashmichandrashekar Mar 10, 2021
9247709
fixes for socket issue
rashmichandrashekar Mar 10, 2021
bbbdaf1
bug fix
rashmichandrashekar Mar 10, 2021
bb49bb0
adding metrics
rashmichandrashekar Mar 10, 2021
a72f0a5
getting telegraf build from pre release
rashmichandrashekar Mar 16, 2021
03b4b16
windows changes
rashmichandrashekar Mar 16, 2021
08fa562
bug fix
rashmichandrashekar Mar 16, 2021
fc16a38
some changes
rashmichandrashekar Mar 16, 2021
b7a9cd3
bug fixes
rashmichandrashekar Mar 16, 2021
362f659
fixing bug
rashmichandrashekar Mar 17, 2021
2280b81
Merge branch 'ci_dev' into rashmi/osm
rashmichandrashekar Mar 17, 2021
60c2d03
removing some comments and unused code
rashmichandrashekar Mar 17, 2021
fda92d6
removing unused sections from sidecar container
rashmichandrashekar Mar 22, 2021
9c8d50e
accidentally removed mounts from rs
rashmichandrashekar Mar 22, 2021
41f5033
changes
rashmichandrashekar Mar 23, 2021
3014f22
increasing fluentbit buffer sizes
rashmichandrashekar Mar 23, 2021
44f8a7d
getting latest telegraf release
rashmichandrashekar Mar 24, 2021
09bb40e
some bug fixes
rashmichandrashekar Mar 25, 2021
7569b46
fixing PR comments
rashmichandrashekar Mar 25, 2021
045b586
removing commented lines
rashmichandrashekar Mar 25, 2021
e26a3d4
fixing PR comments
rashmichandrashekar Mar 25, 2021
a41ad82
merging from latest ci_dev
rashmichandrashekar Mar 25, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ The general directory structure is:
│ │ ├── acrworkflows/ - acr work flows for the Linux Agent container image
│ │ ├── defaultpromenvvariables - default environment variables for Prometheus scraping
│ │ ├── defaultpromenvvariables-rs - cluster level default environment variables for Prometheus scraping
│ │ ├── defaultpromenvvariables-sidecar - cluster level default environment variables for Prometheus scraping in sidecar
│ ├── windows/ - scripts to build the Docker image for Windows Agent
│ │ ├── dockerbuild - script to build the code and docker imag, and publish docker image
│ │ ├── acrworkflows/ - acr work flows for the Windows Agent container image
Expand Down
423 changes: 423 additions & 0 deletions build/common/installer/scripts/tomlparser-prom-customconfig.rb

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions build/linux/installer/conf/prometheus-side-car.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@




28 changes: 28 additions & 0 deletions build/linux/installer/conf/td-agent-bit-prom-side-car.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[SERVICE]
#Default service flush interval is 15 seconds
Flush 15
HTTP_Server Off
Daemon Off
storage.path /var/opt/microsoft/docker-cimprov/state/flbstore/
storage.sync normal
storage.checksum off
storage.backlog.mem_limit 10M
Log_Level info
Parsers_File /etc/opt/microsoft/docker-cimprov/azm-containers-parser.conf
Log_File /var/opt/microsoft/docker-cimprov/log/fluent-bit.log

[INPUT]
Name tcp
Tag oms.container.perf.telegraf.*
Listen 0.0.0.0
Port 25229
Chunk_Size 1m
Buffer_Size 1m
Mem_Buf_Limit 20m

[OUTPUT]
Name oms
EnableTelemetry true
Retry_Limit 10
TelemetryPushIntervalSeconds 300
Match oms.container.*
162 changes: 162 additions & 0 deletions build/linux/installer/conf/telegraf-prom-side-car.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
# Telegraf Configuration
#
# Telegraf is entirely plugin driven. All metrics are gathered from the
# declared inputs, and sent to the declared outputs.
#
# Plugins must be declared in here to be active.
# To deactivate a plugin, comment out the name and any variables.
#
# Use 'telegraf -config telegraf.conf -test' to see what metrics a config
# file would generate.
#
# Environment variables can be used anywhere in this config file, simply prepend
# them with $. For strings the variable must be within quotes (ie, "$STR_VAR"),
# for numbers and booleans they should be plain (ie, $INT_VAR, $BOOL_VAR)


# Global tags can be specified here in key="value" format.
[global_tags]
hostName = "placeholder_hostname"

# Configuration for telegraf agent
[agent]
## Default data collection interval for all inputs
interval = "60s"
## Rounds collection interval to 'interval'
## ie, if interval="10s" then always collect on :00, :10, :20, etc.
round_interval = true

## Telegraf will send metrics to outputs in batches of at most
## metric_batch_size metrics.
## This controls the size of writes that Telegraf sends to output plugins.
metric_batch_size = 3000

## For failed writes, telegraf will cache metric_buffer_limit metrics for each
## output, and will flush this buffer on a successful write. Oldest metrics
## are dropped first when this buffer fills.
## This buffer only fills when writes fail to output plugin(s).
metric_buffer_limit = 60000

## Collection jitter is used to jitter the collection by a random amount.
## Each plugin will sleep for a random time within jitter before collecting.
## This can be used to avoid many plugins querying things like sysfs at the
## same time, which can have a measurable effect on the system.
collection_jitter = "0s"

## Default flushing interval for all outputs. You shouldn't set this below
## interval. Maximum flush_interval will be flush_interval + flush_jitter
flush_interval = "15s"
## Jitter the flush interval by a random amount. This is primarily to avoid
## large write spikes for users running a large number of telegraf instances.
## ie, a jitter of 5s and interval 10s means flushes will happen every 10-15s
flush_jitter = "0s"

## By default or when set to "0s", precision will be set to the same
## timestamp order as the collection interval, with the maximum being 1s.
## ie, when interval = "10s", precision will be "1s"
## when interval = "250ms", precision will be "1ms"
## Precision will NOT be used for service inputs. It is up to each individual
## service input to set the timestamp at the appropriate precision.
## Valid time units are "ns", "us" (or "µs"), "ms", "s".
precision = ""

## Logging configuration:
## Run telegraf with debug log messages.
debug = false
## Run telegraf in quiet mode (error log messages only).
quiet = true
## Specify the log file name. The empty string means to log to stderr.
logfile = ""
## Override default hostname, if empty use os.Hostname()
#hostname = "placeholder_hostname"
## If set to true, do no set the "host" tag in the telegraf agent.
omit_hostname = true


###############################################################################
# OUTPUT PLUGINS #
###############################################################################

# Generic socket writer capable of handling multiple socket types.
[[outputs.socket_writer]]
## URL to connect to
address = "tcp://0.0.0.0:25229"
# address = "tcp://example.com:http"
# address = "tcp4://127.0.0.1:8094"
# address = "tcp6://127.0.0.1:8094"
# address = "tcp6://[2001:db8::1]:8094"
# address = "udp://127.0.0.1:8094"
# address = "udp4://127.0.0.1:8094"
# address = "udp6://127.0.0.1:8094"
# address = "unix:///tmp/telegraf.sock"
# address = "unixgram:///tmp/telegraf.sock"

## Optional TLS Config
# tls_ca = "/etc/telegraf/ca.pem"
# tls_cert = "/etc/telegraf/cert.pem"
# tls_key = "/etc/telegraf/key.pem"
## Use TLS but skip chain & host verification
# insecure_skip_verify = false

## Period between keep alive probes.
## Only applies to TCP sockets.
## 0 disables keep alive probes.
## Defaults to the OS configuration.
# keep_alive_period = "5m"

## Data format to generate.
## Each data format has its own unique set of configuration options, read
## more about them here:
## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
data_format = "json"
namedrop = ["agent_telemetry"]

###############################################################################
# PROCESSOR PLUGINS #
###############################################################################

[[processors.converter]]
[processors.converter.fields]
float = ["*"]

#Prometheus Custom Metrics
[[inputs.prometheus]]
interval = "$AZMON_TELEGRAF_CUSTOM_PROM_INTERVAL"

## Scrape Kubernetes pods for the following prometheus annotations:
## - prometheus.io/scrape: Enable scraping for this pod
## - prometheus.io/scheme: If the metrics endpoint is secured then you will need to
## set this to `https` & most likely set the tls config.
## - prometheus.io/path: If the metrics path is not /metrics, define it with this annotation.
## - prometheus.io/port: If port is not 9102 use this annotation
$AZMON_TELEGRAF_CUSTOM_PROM_MONITOR_PODS
$AZMON_TELEGRAF_CUSTOM_PROM_SCRAPE_SCOPE

$AZMON_TELEGRAF_CUSTOM_PROM_KUBERNETES_LABEL_SELECTOR
$AZMON_TELEGRAF_CUSTOM_PROM_KUBERNETES_FIELD_SELECTOR

fieldpass = $AZMON_TELEGRAF_CUSTOM_PROM_FIELDPASS
fielddrop = $AZMON_TELEGRAF_CUSTOM_PROM_FIELDDROP

metric_version = 2
url_tag = "scrapeUrl"
## Kubernetes config file to create client from.
# kube_config = "/path/to/kubernetes.config"

## Use bearer token for authorization. ('bearer_token' takes priority)
bearer_token = "/var/run/secrets/kubernetes.io/serviceaccount/token"
## OR
# bearer_token_string = "abc_123"

## Specify timeout duration for slower prometheus clients (default is 3s)
response_timeout = "15s"

## Optional TLS Config
tls_ca = "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
## Use TLS but skip chain & host verification
insecure_skip_verify = true

$AZMON_TELEGRAF_CUSTOM_PROM_PLUGINS_WITH_NAMESPACE_FILTER

## OSM Prometheus configuration
$AZMON_TELEGRAF_OSM_PROM_PLUGINS
23 changes: 16 additions & 7 deletions build/linux/installer/conf/telegraf-rs.conf
Original file line number Diff line number Diff line change
Expand Up @@ -540,24 +540,29 @@

#Prometheus Custom Metrics
[[inputs.prometheus]]
interval = "$AZMON_RS_PROM_INTERVAL"
interval = "$AZMON_TELEGRAF_CUSTOM_PROM_INTERVAL"

## An array of urls to scrape metrics from.
urls = $AZMON_RS_PROM_URLS
urls = $AZMON_TELEGRAF_CUSTOM_PROM_URLS

## An array of Kubernetes services to scrape metrics from.
kubernetes_services = $AZMON_RS_PROM_K8S_SERVICES
kubernetes_services = $AZMON_TELEGRAF_CUSTOM_PROM_K8S_SERVICES

## Scrape Kubernetes pods for the following prometheus annotations:
## - prometheus.io/scrape: Enable scraping for this pod
## - prometheus.io/scheme: If the metrics endpoint is secured then you will need to
## set this to `https` & most likely set the tls config.
## - prometheus.io/path: If the metrics path is not /metrics, define it with this annotation.
## - prometheus.io/port: If port is not 9102 use this annotation
$AZMON_RS_PROM_MONITOR_PODS
$AZMON_TELEGRAF_CUSTOM_PROM_MONITOR_PODS

fieldpass = $AZMON_RS_PROM_FIELDPASS
fielddrop = $AZMON_RS_PROM_FIELDDROP
$AZMON_TELEGRAF_CUSTOM_PROM_SCRAPE_SCOPE

$AZMON_TELEGRAF_CUSTOM_PROM_KUBERNETES_LABEL_SELECTOR
$AZMON_TELEGRAF_CUSTOM_PROM_KUBERNETES_FIELD_SELECTOR

fieldpass = $AZMON_TELEGRAF_CUSTOM_PROM_FIELDPASS
fielddrop = $AZMON_TELEGRAF_CUSTOM_PROM_FIELDDROP

metric_version = 2
url_tag = "scrapeUrl"
Expand All @@ -581,7 +586,11 @@
insecure_skip_verify = true
#tagexclude = ["AgentVersion","AKS_RESOURCE_ID","ACS_RESOURCE_NAME", "Region", "ClusterName", "ClusterType", "Computer", "ControllerType"]

$AZMON_RS_PROM_PLUGINS_WITH_NAMESPACE_FILTER
$AZMON_TELEGRAF_CUSTOM_PROM_PLUGINS_WITH_NAMESPACE_FILTER

## OSM Prometheus configuration
$AZMON_TELEGRAF_OSM_PROM_PLUGINS

# [[inputs.exec]]
# ## Commands array
# interval = "15m"
Expand Down
28 changes: 16 additions & 12 deletions build/linux/installer/datafiles/base_container.data
Original file line number Diff line number Diff line change
Expand Up @@ -110,24 +110,28 @@ MAINTAINER: 'Microsoft Corporation'
/opt/tomlrb/string_utils.rb; source/toml-parser/tomlrb/string_utils.rb; 644; root; root
/opt/tomlrb/version.rb; source/toml-parser/tomlrb/version.rb; 644; root; root

/opt/td-agent-bit/bin/out_oms.so; intermediate/${{BUILD_CONFIGURATION}}/out_oms.so; 755; root; root
/etc/opt/microsoft/docker-cimprov/td-agent-bit.conf; build/linux/installer/conf/td-agent-bit.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/td-agent-bit-rs.conf; build/linux/installer/conf/td-agent-bit-rs.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/azm-containers-parser.conf; build/linux/installer/conf/azm-containers-parser.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/out_oms.conf; build/linux/installer/conf/out_oms.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/telegraf.conf; build/linux/installer/conf/telegraf.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/telegraf-rs.conf; build/linux/installer/conf/telegraf-rs.conf; 644; root; root
/opt/microsoft/docker-cimprov/bin/TelegrafTCPErrorTelemetry.sh; build/linux/installer/scripts/TelegrafTCPErrorTelemetry.sh; 755; root; root
/opt/livenessprobe.sh; build/linux/installer/scripts/livenessprobe.sh; 755; root; root
/opt/tomlparser-prom-customconfig.rb; build/linux/installer/scripts/tomlparser-prom-customconfig.rb; 755; root; root
/opt/tomlparser-mdm-metrics-config.rb; build/linux/installer/scripts/tomlparser-mdm-metrics-config.rb; 755; root; root
/opt/tomlparser-metric-collection-config.rb; build/linux/installer/scripts/tomlparser-metric-collection-config.rb; 755; root; root
/opt/td-agent-bit/bin/out_oms.so; intermediate/${{BUILD_CONFIGURATION}}/out_oms.so; 755; root; root
/etc/opt/microsoft/docker-cimprov/prometheus-side-car.conf; build/linux/installer/conf/prometheus-side-car.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/td-agent-bit.conf; build/linux/installer/conf/td-agent-bit.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/td-agent-bit-prom-side-car.conf; build/linux/installer/conf/td-agent-bit-prom-side-car.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/td-agent-bit-rs.conf; build/linux/installer/conf/td-agent-bit-rs.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/azm-containers-parser.conf; build/linux/installer/conf/azm-containers-parser.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/out_oms.conf; build/linux/installer/conf/out_oms.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/telegraf.conf; build/linux/installer/conf/telegraf.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/telegraf-prom-side-car.conf; build/linux/installer/conf/telegraf-prom-side-car.conf; 644; root; root
/etc/opt/microsoft/docker-cimprov/telegraf-rs.conf; build/linux/installer/conf/telegraf-rs.conf; 644; root; root
/opt/microsoft/docker-cimprov/bin/TelegrafTCPErrorTelemetry.sh; build/linux/installer/scripts/TelegrafTCPErrorTelemetry.sh; 755; root; root
/opt/livenessprobe.sh; build/linux/installer/scripts/livenessprobe.sh; 755; root; root
/opt/tomlparser-prom-customconfig.rb; build/common/installer/scripts/tomlparser-prom-customconfig.rb; 755; root; root
/opt/tomlparser-mdm-metrics-config.rb; build/linux/installer/scripts/tomlparser-mdm-metrics-config.rb; 755; root; root
/opt/tomlparser-metric-collection-config.rb; build/linux/installer/scripts/tomlparser-metric-collection-config.rb; 755; root; root

/opt/tomlparser-agent-config.rb; build/linux/installer/scripts/tomlparser-agent-config.rb; 755; root; root
/opt/tomlparser.rb; build/common/installer/scripts/tomlparser.rb; 755; root; root
/opt/td-agent-bit-conf-customizer.rb; build/common/installer/scripts/td-agent-bit-conf-customizer.rb; 755; root; root
/opt/ConfigParseErrorLogger.rb; build/common/installer/scripts/ConfigParseErrorLogger.rb; 755; root; root
/opt/tomlparser-npm-config.rb; build/linux/installer/scripts/tomlparser-npm-config.rb; 755; root; root
/opt/tomlparser-osm-config.rb; build/linux/installer/scripts/tomlparser-osm-config.rb; 755; root; root


/opt/microsoft/omsagent/plugin/filter_cadvisor_health_container.rb; source/plugins/ruby/filter_cadvisor_health_container.rb; 644; root; root
Expand Down
27 changes: 17 additions & 10 deletions build/linux/installer/scripts/livenessprobe.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,22 @@ then
exit 1
fi

if [ ! -s "inotifyoutput.txt" ]
if [ -s "inotifyoutput.txt" ]
then
# inotifyoutput file is empty and the grep commands for omsagent and td-agent-bit succeeded
exit 0
else
if [ -s "inotifyoutput.txt" ]
then
# inotifyoutput file has data(config map was applied)
echo "inotifyoutput.txt has been updated - config changed" > /dev/termination-log
exit 1
fi
# inotifyoutput file has data(config map was applied)
echo "inotifyoutput.txt has been updated - config changed" > /dev/termination-log
exit 1
fi

# Perform the following check only for prometheus sidecar that does OSM scraping or for replicaset when sidecar scraping is disabled
if [[ ( ( ! -e "/etc/config/kube.conf" ) && ( "${CONTAINER_TYPE}" == "PrometheusSidecar" ) ) ||
( ( -e "/etc/config/kube.conf" ) && ( ( ! -z "${SIDECAR_SCRAPING_ENABLED}" ) && ( "${SIDECAR_SCRAPING_ENABLED}" == "false" ) ) ) ]]; then
if [ -s "inotifyoutput-osm.txt" ]
then
# inotifyoutput-osm file has data(config map was applied)
echo "inotifyoutput-osm.txt has been updated - config changed" > /dev/termination-log
exit 1
fi
fi

exit 0
Loading