Commit graph

846 commits

Author SHA1 Message Date
Julius Volz b539481503 Merge pull request #75 from prometheus/remove-attribute-module
Use flags instead of config and remove attributes
2015-05-21 11:49:01 +02:00
Johannes 'fish' Ziemke 665b05eedc Use flags instead of config and remove attributes 2015-05-21 11:36:56 +02:00
Julius Volz 072ddabf62 Fix /proc/net/dev column parsing.
This fixes https://github.com/prometheus/node_exporter/issues/73
2015-05-21 01:01:15 +02:00
Matthias Rampke 2ee8470004 remove cgo dependency
by hardcoding `USER_HZ` (aka. `_SC_CLK_TCK`) to 100, which it is for all
platforms Go supports. See prometheus/node_exporter#52 for discussion around this too.

Closes prometheus/node_exporter#52.
2015-05-12 14:24:48 +00:00
Matthias Rampke 37c7e5e60f Add IPVS stats collector.
This collector exposes IPVS status from `/proc/net/ip_vs` and stats from
`/proc/net/ip_vs_stats`.

Note that it is _not_ tested with IPv6, YMMV.
2015-05-08 14:02:47 +00:00
Julius Volz 3ab0b1f915 Merge pull request #56 from kjmkznr/add-tcp-stat-collector
Add TCP state collector
2015-03-24 12:50:26 +01:00
KOJIMA Kazunori e4da771b21 Add collector for /proc/net/tcp 2015-03-24 20:34:48 +09:00
Benjamin Staffin df7ba0af85 Switch protobuf import to its new github URL 2015-03-22 12:25:07 -07:00
Julius Volz efcce45c90 Make collector-specific flags consistent with others.
This puts all collector-specific flags into their own namespace under
"collector.<collector-name>", and moves from camel case to dashes, which
is the standard in Prometheus land now.
2015-02-18 18:42:39 +01:00
Stephen Shirley 54da76f575 Match fd0, not fda0
Add fd/sr/vda examples to test input
2015-02-18 17:10:28 +01:00
Stephen Shirley 686a0c768c Fix typo, match fd0, not fdd0 2015-02-18 16:09:41 +01:00
Stephen Shirley 72404d9ed1 Ignore floppy disk devices, due to it being 2015 2015-02-18 16:04:53 +01:00
Stephen Shirley 0c7d45cc5d Also ignore vda1 and friends 2015-02-18 15:44:30 +01:00
Daniel Speichert 1763908013 Fixed panic when parsing /proc/stat on 2.6.32-25-pve
Fixes issue described in #38
/proc/stat reports a blank line which needs to be ignored.
Old kernels misses one CPU time field, this needs to be ignored too.
2015-02-07 06:36:36 +01:00
Brian Brazil 352cde6d20 Add text file exporter
This allows static metrics (e.g. an attributes collector replacement),
and cronjobs to expose stats by echoing into a file.

For example:

echo "my_metric 123" > mycronjob.prom.$$
mv mycronjob.prom.$$ mycronjob.prom
2015-01-25 16:25:25 +00:00
Tobias Schmidt 0aacec2335 Fix ganglia namespace
Remove double underscore usage.
2014-11-26 18:15:02 -05:00
Tobias Schmidt 74971c46ba Consolidate build flags
The build of any collector can be deactivated by using "no<name>".
2014-11-25 18:01:02 -05:00
Tobias Schmidt 211ddf33f1 Consolidate collector selection
Remove special tags necessary for gmond and runit collectors. All
collectors get built. Selection of which collectors to use continues to
happen via parameter.
2014-11-25 18:01:02 -05:00
Tobias Schmidt 872f921867 Reduce number of global variables used
This is the first step to make the exporter more testable.
2014-11-24 21:08:50 -05:00
Tobias Schmidt 974f6fc762 Fix tests 2014-11-24 18:34:02 -05:00
Brian Brazil 96eaff8c7e Add an exporter for /proc/net/netstat, enabled by default.
This catches things like listen overflows, retransmits
and other things that are very useful for retroactive debugging
thus I think it's justified to have it on by default.
2014-11-11 16:54:08 +00:00
Brian Brazil 1c17481a42 Collect at every scrape, rather than at regular intervals.
Switch to Update using the Collecter Collect interface, due to not knowing all
metricnames in all modules beforehand we can't use Describe and thus the full
Collecter interface.

Remove 'updates', it's meaning varies by module and doesn't add much.
2014-10-29 17:00:36 +00:00
Johannes 'fish' Ziemke 9f6fc576df Look for slave_ and lower_ prefixed device in proc
Looks like on newer kernels this is prefixed lower_ not slave_.
2014-10-03 14:29:38 +02:00
Johannes 'fish' Ziemke 0bf0f67503 Add network bonding collector
This collector exposes two metrics:

- net_bonding_slaves: configured slaves per bonding interface
- net_bonding_slaves_active: currently active slaves per bonding
  interface
2014-08-14 15:45:17 +02:00
Johannes 'fish' Ziemke b03ff7cb9b Fix format string in test 2014-08-13 13:36:16 +02:00
Johannes 'fish' Ziemke 2b3a112b54 Add time exporter
This simple exporter exposes the systems unix time. It's useful to
compare it to the prometheus server time and other targets to detect
clock skew.
2014-07-28 13:02:48 +02:00
Johannes 'fish' Ziemke 32724a10b0 Add NTP exporter
This exporter gets the time from a NTP server and exposes the offset
between the remote and local system time.
2014-07-28 13:02:46 +02:00
Johannes 'fish' Ziemke 053db59122 Change metric prefix from raid to megacli 2014-07-09 18:47:17 +02:00
Johannes 'fish' Ziemke 50c66918d8 Merge pull request #18 from prometheus/add-megaraid-metrics
Add MegaCLI collector
2014-07-09 14:56:52 +02:00
Johannes 'fish' Ziemke f47abc5d06 Add MegaCLI collector
This collector exports the following metrics:

- raid_drive_temperature: drive temperature
- raid_drive_count: drive error and event counters
- raid_adapter_disk_presence: disk presence per adapter
2014-07-09 14:56:06 +02:00
Johannes 'fish' Ziemke 7cb4c0edb6 Fix tests 2014-07-04 18:44:51 +02:00
Bjoern Rabenstein 28468bebae Now also migrate gmond and runit. 2014-06-26 21:16:21 +02:00
Bjoern Rabenstein 0563ecd29d Migrated everything to new client_golang. 2014-06-26 19:20:36 +02:00
Brian Brazil c0f10e3a6d Update comment format. 2014-06-06 11:38:34 +01:00
Brian Brazil 09a3de1669 Changes per code review. 2014-06-06 10:53:40 +01:00
Brian Brazil 062443133e Add collector for /proc/stat, enabled by default.
This gives cpu stats, boot time, context switches, forks.
2014-06-06 10:37:16 +01:00
Brian Brazil 3f0814f13b Add filesystem collector module, to report space used etc. 2014-06-05 20:46:11 +01:00
Brian Brazil b98ac0b050 Also ignore xvda1, as seen on AWS 2014-06-05 14:23:13 +01:00
Brian Brazil f9c6e4ca52 Ignore disk partitions by default, it's the disks themselves you usually want. 2014-06-05 11:44:44 +01:00
Brian Brazil 25ea90369c Split native collector into it's component parts and make them enablable.
Last login is disabled by default as it's broken on ubuntu 12.04
Interrupts is disabled by default as it's very granular and we'll have total interrupts from /proc/stat

Allow ignoring devices from diskstats, ignore ram and loop devices by default.

Use glog for logging.
2014-06-04 12:37:25 +01:00
Brian Brazil 964cdbfcc9 Trim down a bit per feedback. 2014-05-23 15:53:31 +01:00
Brian Brazil ffc811b337 Expand docs per code review. 2014-05-23 15:38:44 +01:00
Brian Brazil 6cdaf0e969 Change stats to follow name guidelines.
Diskstats: Split out metrics, keep 'device' label
Meminfo: Split out metrics, one each. Convert kB to bytes.
Netstats: Split out metrics, keep 'device' label.
Interrupts: Stays the same. Not perfect, but should be rarely used.
Loadavg: Make it clear it's the 1m loadavg
Last seen: Not clear this belongs in the node exporter, as it's more a user
  thing than a machine thing. Changed to absolute time rather than relative.

All stats now have appropriate counter/gauge type.
2014-05-23 14:41:43 +01:00
Julius Volz a22036788a Prefix Ganglia metrics with "ganglia_".
The gmond (Ganglia) exporter module exports many metrics not under our
control. They should all be prefixed in a common way to make it obvious
where they came from.

Fixes https://github.com/prometheus/node_exporter/issues/8
2014-04-10 12:34:39 +02:00
Johannes 'fish' Ziemke 3a4aa70afb Make collector testable and add native test 2014-02-18 14:53:48 +01:00
Johannes 'fish' Ziemke 3ac5222f8b Move exporter to main and listen/interval to flags 2014-02-18 13:57:41 +01:00