blob: c43759472e37856325c4d7fbede4c64ef5cc1483 [file] [edit]
Interval 60
# Explicitly set hostname to "" to indicate the default resource.
Hostname {{ fqdn }}
# The Stackdriver agent does not use fully qualified domain names.
FQDNLookup false
LoadPlugin syslog
<Plugin "syslog">
LogLevel "info"
</Plugin>
# if you uncomment this, you will get collectd logs separate from syslog
#LoadPlugin logfile
#<Plugin "logfile">
# LogLevel "info"
# File "/var/log/collectd.log"
# Timestamp true
#</Plugin>
# LoadPlugin docker
LoadPlugin df
<Plugin "df">
FSType "devfs"
IgnoreSelected true
ReportByDevice true
ValuesPercentage true
</Plugin>
LoadPlugin cpu
<Plugin "cpu">
ValuesPercentage true
ReportByCpu false
</Plugin>
LoadPlugin swap
<Plugin "swap">
ValuesPercentage true
</Plugin>
LoadPlugin interface
LoadPlugin disk
LoadPlugin load
LoadPlugin memory
<Plugin "memory">
ValuesPercentage true
</Plugin>
LoadPlugin processes
LoadPlugin tcpconns
LoadPlugin write_gcm
LoadPlugin match_regex
LoadPlugin match_throttle_metadata_keys
LoadPlugin stackdriver_agent
<Plugin "processes">
ProcessMatch "all" ".*"
Detail "ps_cputime"
Detail "ps_disk_octets"
Detail "ps_rss"
Detail "ps_vm"
</Plugin>
<Plugin "disk">
# No config - collectd fails parsing configuration if tag is empty.
</Plugin>
<Plugin "tcpconns">
AllPortsSummary true
</Plugin>
LoadPlugin exec
# Monitor the Stackdriver Logging agent. This should fail gracefully if for any
# reason the metrics endpoint for the Logging agent isn't reachable.
<Plugin "exec">
# The script doesn't need any privileges, so run as 'nobody'.
Exec "nobody" "/opt/stackdriver/collectd/bin/stackdriver-read_agent_logging" "http://localhost:24231/metrics"
</Plugin>
LoadPlugin aggregation
LoadPlugin "match_regex"
<Plugin "memory">
ValuesPercentage true
</Plugin>
<Plugin "write_gcm">
CloudProvider "gcp"
Instance {{ hostname }}
Project {{ project_name }}
Zone {{ zone_name }}
PrettyPrintJSON false
# EnableMetadataAgent true
</Plugin>
PostCacheChain "PostCache"
<Chain "PostCache">
<Rule "processes">
<Match "regex">
Plugin "^processes$"
Type "^(ps_cputime|disk_octets|ps_rss|ps_vm)$"
</Match>
<Target "jump">
Chain "MaybeThrottleProcesses"
</Target>
Target "stop"
</Rule>
<Rule "otherwise">
<Match "throttle_metadata_keys">
OKToThrottle false
</Match>
<Target "write">
Plugin "write_gcm"
</Target>
</Rule>
</Chain>
<Chain "MaybeThrottleProcesses">
<Rule "default">
<Match "throttle_metadata_keys">
OKToThrottle true
TrackedMetadata "processes:pid"
TrackedMetadata "processes:command"
TrackedMetadata "processes:command_line"
TrackedMetadata "processes:owner"
</Match>
<Target "write">
Plugin "write_gcm"
</Target>
</Rule>
</Chain>
# if you have other config, especially for plugins, you can drop them
# into this directory
Include "/opt/stackdriver/collectd/etc/collectd.d"
Include "/etc/stackdriver/collectd.d"