Rene Treffer
abe8e297a6
Prefer device path based names over exported names ( #334 )
...
* Prefer device path based names over exported names
For some sensors (like coretemp) it is possible that multiple
instances exist, thus base the name on the device path and not on
the exported name.
* Update end-to-end test for dual socket machines
Explicitly have 2 coretemp instances with a symlink for the device
such that the hwmon collector must pick that name (or fail)
2016-10-28 20:25:44 +01:00
Ben Kochie
c6162312f2
Add Linux NUMA "numastat" metrics ( #249 )
...
* Add Linux NUMA "numastat" metrics
Read the `numastat` metrics from /sys/devices/system/node/node* when reading NUMA meminfo metrics.
* Update end-to-end test output.
* Add `numastat` metrics as counters.
* Add tests for error conditions.
* Refactor meminfo numa metrics struct
* Refactor meminfoKey into a simple struct of metric data.
This makes it easier to pass slices of metrics around.
* Refactor tests.
* Fixup: Add suggested fixes.
* Fixup: More fixes
* Add another scanner.Err() return
* Add "_total" to counter metrics.
2016-10-12 13:07:49 +02:00
Rene Treffer
081ecc5db0
Add hwmon /sensors support ( #278 )
...
* Add hwmon support (mainly known from lm-sensors)
This commit adds initial support for linux hardware sensors, exported
through sysfs.
Details of the interface can be found at
https://www.kernel.org/doc/Documentation/hwmon/sysfs-interface
* Add end-to-end test with some real life data
* Cleanup comments on hwmon collector
* Drop raw sensor name from hwmon output
* Let the sensor label be "sensor"
* Add hwmon short description to README.
2016-10-06 16:33:24 +01:00
stuart nelson
450fe0f3ba
Add test
2016-09-28 09:10:05 +02:00
stuart nelson
cf3710191a
Compile meminfo for dfly ( #315 )
...
* Compile meminfo for dfly
* Update README.me
2016-09-28 08:08:19 +01:00
stuart nelson
ef1925db7d
Compile netdev on dragonfly ( #314 )
...
* Compile netdev on dragonfly
* Only run netdev bsd test on bsd
* Update README.md
2016-09-27 21:44:13 +01:00
stuart nelson
ee37a27d91
Export values as uint64_t
2016-09-20 23:27:56 +02:00
stuart nelson
e942d7e234
Maintain granularity in cpu data
...
Export cpu mode times as original uint64_t data,
and update frequency, and do the conversion to
float64 and subsequent division in go.
2016-09-20 09:10:53 +02:00
Ben Kochie
afac1f7433
Update mdstat fixture based on linux source.
...
Update `Contains` matching for `resync=`
2016-09-19 16:11:16 +02:00
stuart nelson
57f88ac4f6
Update comment
2016-09-19 09:48:53 +02:00
stuart nelson
78c84b1a47
Remove old freq finding code
...
This is the code that was lifted from the freebsd
implementation, but was not correct.
2016-09-19 09:48:34 +02:00
stuart nelson
45ac033d9e
Use correct frequency for calculating cpu time
...
The correct frequency is the systimer frequency,
not the stathz.
From one of the DragonFly developers:
The bump upon each statclock is:
((cur_systimer - prev_systimer) * systimer_freq) >> 32
systimer_freq can be extracted from following
sysctl in userspace:
sysctl kern.cputimer.freq
2016-09-19 09:35:41 +02:00
stuart nelson
8cc06aab04
Remove unneeded ncpu variable
2016-09-18 17:36:39 +02:00
stuart nelson
9f7822ccdc
Remember to bzero string
...
Duplication was caused by malloc returning a
region of memory that already had data in it.
2016-09-18 16:17:49 +02:00
stuart nelson
c02dcdeb35
Remove unused comment.
2016-09-18 14:21:54 +02:00
stuart nelson
3e4a154656
Correctly exporting values
...
Moved to exporting via a string, which is then
split and parsed.
The string is sometimes duplicated, however.
2016-09-18 14:16:26 +02:00
Ben Kochie
64b82596ef
Fix mdadm collector for resync=PENDING.
...
Add fix for mdadm devices in state `resync=PENDING`.
* Update test and fixture.
2016-09-18 08:30:20 +02:00
stuart nelson
4b4385bd44
Remove free
...
Don't need it since we aren't malloc'ing
2016-09-17 19:14:31 +02:00
stuart nelson
cc5142a007
Remove some unnecessary includes
2016-09-17 19:13:05 +02:00
stuart nelson
a9d27ea722
Appears to be working? Still need to cleanup after self
2016-09-17 18:50:08 +02:00
stuart nelson
1d75b376ae
checkpoint
2016-09-17 14:43:29 +02:00
stuart nelson
1b7a18c271
Creating slice from C-array
...
Might not be lined up correctly? Weird output data
in the second CPU.
2016-09-17 14:05:36 +02:00
stuart nelson
61f36ac1ab
Activate filesystem collector on DragonFly ( #302 )
2016-09-11 12:08:00 -04:00
stuart nelson
03da1ea516
successfully exporting one of 2 cpus
2016-09-10 21:13:06 +02:00
stuart nelson
cda2f493ee
wip
2016-09-10 19:22:34 +02:00
Takuya Nakaike
0f2a87ab22
add s390x support
2016-08-24 08:06:04 -04:00
Calle Pettersson
e890743f79
Add white/blacklisting of units for systemd collector
2016-08-20 13:08:03 +02:00
Julius Volz
428746c48e
Merge pull request #285 from prometheus/meminfo-bsd-constmetrics
...
Convert BSD meminfo collector to use ConstMetrics
2016-08-14 20:14:13 +02:00
Julius Volz
f0796683fe
Convert BSD meminfo collector to use ConstMetrics
...
This suffers from the same concurrency bug as the netstat one:
https://github.com/prometheus/node_exporter/issues/280
2016-08-13 00:40:29 +02:00
Julius Volz
c0b46391e2
Merge pull request #283 from prometheus/meminfo-constmetrics
...
Convert meminfo collector to use ConstMetrics
2016-08-12 19:02:30 +02:00
Brian Brazil
25289c5024
Merge pull request #284 from prometheus/sockstat-constmetrics
...
Convert sockstat collector to use ConstMetrics
2016-08-12 00:42:23 +01:00
Julius Volz
cef3d98256
Convert sockstat collector to use ConstMetrics
...
This suffers from the same concurrency bug as the netstat one:
https://github.com/prometheus/node_exporter/issues/280
2016-08-12 01:36:42 +02:00
Julius Volz
eac396c637
Convert meminfo collector to use ConstMetrics
...
This suffers from the same concurrency bug as the netstat one:
https://github.com/prometheus/node_exporter/issues/280
2016-08-12 01:30:15 +02:00
Julius Volz
f91bca427b
Convert filefd collector to use ConstMetrics
...
This suffers from the same concurrency bug as the netstat one:
https://github.com/prometheus/node_exporter/issues/280
2016-08-12 01:26:25 +02:00
Julius Volz
9128952454
Fix end-to-end tests after netstat conversion
2016-08-12 01:09:20 +02:00
Julius Volz
8c5c880705
Convert netstat collector to use ConstMetrics
...
Fixes https://github.com/prometheus/node_exporter/issues/280
2016-08-12 00:34:00 +02:00
Thomas Frössman
32e3445d72
Fix mdstat tabs parsing
2016-08-06 14:08:11 +02:00
Daniel
c3eba340e3
Update e2e-output.txt
2016-07-09 15:36:52 +02:00
Daniel
87b3df90e6
Update diskstats
2016-07-09 15:23:31 +02:00
Daniel
a7a8d088da
Ignore partitions on NVME devices by default
...
The convention of the linux driver is nvme($device)n($namespace)p($partition). On *bsd it seems to be different, using "ns" instead of "n" as the namespace separator.
2016-07-09 13:23:01 +02:00
Brian Brazil
f660b32f08
Merge pull request #267 from mgit-at/sockstat-rhe4
...
sockstat: add support for RHE4
2016-07-07 21:30:23 +01:00
Johannes 'fish' Ziemke
7e5aaa9e33
Use meminfo_freebsd on darwin as well
2016-07-06 12:12:16 +02:00
Johannes 'fish' Ziemke
4b04d04558
Enable *bsd collector on darwin
2016-07-06 10:24:20 +02:00
Michael Gebetsroither
4b820427dd
sockstat: add support for RHE4
2016-07-05 23:24:54 +02:00
slene
dea279267a
Close file handler in textfile
2016-06-30 00:06:51 +08:00
Karsten Weiss
69ba0e916b
filefd_linux.go: Fix a typo.
2016-06-20 18:08:26 +02:00
Matthias Rampke
344fe2c4c5
Merge pull request #253 from prometheus/superq/md_raid0
...
Add support for raid0 devices in mdadm_linux collector.
2016-06-14 12:14:51 +02:00
Ben Kochie
8c809cd29a
Add additional test for mdadm_linux collector
2016-06-11 08:54:39 +02:00
Ben Kochie
a09bbaacd1
Add support for raid0 devices in mdadm_linux collector.
2016-06-11 08:54:39 +02:00
Julius Volz
ffd96078e0
Merge pull request #241 from mrwacky42/ignore-fs-types
...
Add flag to ignore certain filesystem types (Copy of #217 )
2016-06-06 17:31:29 -04:00
Sharif Nassar
f0630d5cbb
Do not export the filesystem type pattern
2016-06-06 11:10:50 -07:00
Anton Tolchanov
fc3a7b7a97
Add NTP stratum to NTP collector
2016-06-03 13:25:30 +03:00
Chris Batey
387c64424b
Use the offset calculation that includes round trip time in the ntp collector
...
Previously the raw time difference was used which includes the network trip time
between the node and the ntp server. This makes setting alerts off the value
troublesome as it depends on the latency as well as the clock offset.
2016-06-01 08:56:20 +01:00
Sharif Nassar
bf88b6ee0f
Fix typos, and initialisms from comments in #217
2016-05-13 13:40:14 -07:00
Dominik Schulz
3fe5e7f8fa
Add ignored fs types
2016-05-13 13:40:14 -07:00
Tobias Schmidt
3d81f25fdd
Merge pull request #224 from giganteous/test-freebsd-netdev
...
Add a unit test for the conversion
2016-05-05 01:12:52 -04:00
Tobias Schmidt
6683a89f9e
Merge pull request #226 from giganteous/fix-386-on-freebsd
...
Fix compilation on freebsd/386
2016-05-05 01:08:14 -04:00
Steve Durrheimer
60cbc9efc0
Make version informations consistent between prometheus components
...
This also fixes #231 by adding the '-version' flag
2016-05-04 08:43:33 +02:00
Julius Volz
c3b16c7b2e
Remove lastlogin collector.
...
See also https://github.com/prometheus/node_exporter/issues/229
2016-04-24 18:30:15 +02:00
Kai Storbeck
53d0a7815b
Add a unit test for the conversion
2016-04-21 23:45:34 +02:00
Matthias Schiffer
91ddafdb33
Add 'logind' exporter
...
logind provides a nice interface to find out about the numbers of sessions
on a system; it is used on most Linux distributions, even those which
aren't using systemd.
The exporter exposes the total number of sessions indexed by the following
attributes:
* seat
* type ("tty", "x11", ...)
* class ("user", "greeter", ...)
* remote ("true"/"false")
2016-04-20 17:28:12 +02:00
Kai Storbeck
dcfbf40dbf
change caps of the constant
2016-04-20 00:22:47 +02:00
Kai Storbeck
365e688cec
gofmt, a typo, and an unintended change crept in
2016-04-20 00:19:16 +02:00
Kai Storbeck
aac89c524e
This should fix it.
2016-04-20 00:08:26 +02:00
Kai Storbeck
1122ce49c7
fix the uint conversion to strings
2016-04-16 14:39:55 +02:00
Christoph Hack
5d35401a41
systemd-collector: support private/direct connections without dbus
2016-03-29 16:19:47 +02:00
Christian Svensson
fff0298c68
Fix NTP server command line reference
...
--ntpServer is actually -collector.ntp.server
2016-02-20 22:04:49 +01:00
Christian Schwarz
1fc84e2fb6
Re-implement CPU metrics collection through sysctls.
...
This removes the requirement to run `node_exporter` as root or with read
access to `/dev/kmem` in order to get CPU usage statistics.
Once FreeBSD adds a macro for the `kern.cp_times` sysctl, the
`setupSysctlMIBs()` function should be replaced by usage of the macro.
2016-02-17 15:39:21 +01:00
Christian Schwarz
2ca6280b82
Fix compile error on FreeBSD
...
When compiling `20ecedd0b4c983bd7b88f97cd7a21461988a6c12` with GNU make (`gmake`) on FreeBSD 10.2-RELEASE, I get the following error:
```
collector/filesystem_bsd.go:60: non-bool mnt[i].f_flags & MNT_RDONLY (type C.uint64_t) used as if condition
Makefile.COMMON:85: recipe for target 'node_exporter' failed
gmake: *** [node_exporter] Error 2
```
This problem is fixed by this patch.
2016-02-17 15:39:21 +01:00
Carlos Amedee
8578a3281a
fix a small typo in an error message.
2016-02-09 23:22:29 -05:00
Pavel Borzenkov
5a085dcaf5
meminfo_numa: fix crash on CentOS 6 kernel
...
It turns out, on some kernels (notably - CentOS6) there is an empty line
inserted at the beginning of /sys/devices/system/node/node*/meminfo
files. The leads to node_exporter crash on such kernels.
Fix this by checking for empty string first.
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
2016-02-06 16:11:49 +03:00
Tobias Schmidt
e2163db0f7
Document os support of each collector
2016-01-21 19:36:58 -05:00
Tobias Schmidt
041de0e30c
Fix go format style in filesystem collector
2016-01-21 16:20:32 -05:00
Tobias Schmidt
d1f0f2247d
Merge pull request #165 from pborzenkov/ksmd-collector
...
Add new collector exposing 'ksmd' stats
2016-01-21 08:48:47 -05:00
Tobias Schmidt
4d07881b5b
Merge pull request #162 from wrouesnel/read_only_flag
...
Add filesystem read-only metric.
2016-01-21 08:43:54 -05:00
Pavel Borzenkov
0e78ed63a6
Add new collector exposing 'ksmd' stats
...
Add new collector which exposes the content of /sys/kernel/mm/ksm
directory. This directory contains control and statistics files for
Kernel Samepage Merging daemon.
The collector is not enabled by default.
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
2016-01-21 13:43:22 +03:00
Tobias Schmidt
c47c011063
Fix go format style in mdadm collector
2016-01-21 00:44:07 -05:00
Tobias Schmidt
f6f4fda1aa
Merge pull request #168 from pborzenkov/per-numa-meminfo
...
Add new per NUMA node memory statistics collector
2016-01-20 23:43:24 -05:00
afefelov
00e1db52bb
Fix mdstat for devices in delayed resync state
...
In some raid configurations resync will be delayed for devices allocated
on the same physiclal units.
Fixes #170 .
2016-01-20 23:35:39 -05:00
Juergen Hoetzel
4c909d4793
Disable compilation of vmstat on !Linux target OS
2016-01-19 17:43:02 +01:00
Juergen Hoetzel
e3437dc583
Fix build on 32-bit architectures
2016-01-19 17:21:47 +01:00
Pavel Borzenkov
21d473ffd4
Fix compilation without conntrack collector
...
Entry collector uses readUintFromFile() function which is defined by
conntrack collector. Thus, it is impossible to build node_exporter w/o
conntrack collector. Fix this by factoring out the function into
helper.go file.
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
2016-01-15 15:16:12 +03:00
Pavel Borzenkov
c12d8ea927
Add new per NUMA node memory statistics collector
...
It is sometimes useful to understand the distribution of free/occupied
memory between NUMA nodes to deal with performance problems. To do so,
add new meminfo_numa collector that enables exporting of per node
statistics along with unit and end-to-end tests for it.
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
2016-01-15 15:04:27 +03:00
Björn Rabenstein
fae388dcab
Merge pull request #191 from erkki/fix_filefd
...
fix block nesting bug
2016-01-14 15:15:08 +01:00
Richard Hartmann
e8fdc4d160
collector/entropy_linux.go: Use canonical name for available entropy
2016-01-14 08:26:04 +01:00
Richard Hartmann
aee580d8d8
Introduce entropy collector for Linux
2016-01-13 18:29:52 +01:00
Erkki Eilonen
ff7106615e
fix block nesting bug causing filefd values to never be updated post initial call
2016-01-13 21:09:01 +07:00
Florian Koch
5d5346af8a
Add vmstat collector, enabled per default
2016-01-11 07:58:30 +01:00
Caskey L. Dickson
ab9ee574fb
Build cleanly under windows.
...
Removes unused signal handlers left over from signal based collection
and block the non windows-relevant collectors loadavg and interrupts.
Signal based collection removed in 1c17481a42
.
2016-01-07 17:59:16 -08:00
Juergen Hoetzel
e02d99ebff
Fix compilation on FreeBSD. Refs #139
...
There is no interrupts_freebsd.go implementation yet.
2016-01-07 19:25:30 +01:00
Daniel Bechler
fc3931c924
Add build_info metric similar to the one of Prometheus itself
2016-01-06 23:54:33 +01:00
Peter Fern
09e610ad37
Calculate Linux disk bytes read/written based on sector size (512B)
...
Logical sector size appears to be fixed at 512B for the foreseeable
future in the kernel, so for now we just hard-code it.
2015-12-27 22:00:02 +11:00
Brian Brazil
a82b4c30cb
Add linux conntrack collector.
2015-12-20 00:57:52 +00:00
Julius Volz
613f531280
Merge pull request #174 from audebert/systemd
...
collector: add systemd services status
2015-12-19 16:19:19 +01:00
Rémi Audebert
8628d60125
collector: systemd: collect whether the system is operational
2015-12-19 13:54:20 +01:00
Rémi Audebert
87ccaa39c9
collector: add systemd
2015-12-19 13:54:20 +01:00
Brian Brazil
2f0d697f8c
Do a make format run.
2015-12-18 14:08:52 +00:00
Brian Brazil
7739fb4e12
Switch linux stat to using ConstMetric
2015-12-18 12:28:51 +00:00
Brian Brazil
6e20d89467
Merge pull request #169 from pborzenkov/ntp-fix-missing-arg
...
Add missing argument to fmt.Errorf function in 'ntp' collector
2015-11-13 15:13:02 +00:00
Pavel Borzenkov
d773360d12
Add missing argument to fmt.Errorf function in 'ntp' collector
...
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
2015-11-13 18:09:11 +03:00
Pavel Borzenkov
d1789be33e
Fix compilation on OS X
...
As OS X doesn't have it's own interrupts provider, don't build
interrupts_common on OS X as well. Otherwise build fails, because
interrupts_common depends on variables provided by platform-specific
files.
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
2015-11-12 18:17:32 +03:00
Will Rouesnel
05539ee156
Add filesystem read-only metric node_filesystem_readonly
...
This is a boolean metric which is set to 1 when the filesystem is flagged as
read-only.
2015-11-12 14:11:07 +11:00
Bruno Bigras
f74de8943b
Fix flag name in textfile.go
2015-11-10 15:45:50 -05:00
Julius Volz
07b39499cd
Fix protocol version setting in NTP collector.
...
The upstream library changed their interface - the global Version
variable is gone:
283ed9d548
2015-11-10 10:08:57 +01:00
Tobias Schmidt
b11cd9c7d4
Merge pull request #158 from mischief/interrupts-openbsd
...
collector: add openbsd support to interrupt collector
2015-11-06 22:26:09 -05:00
Tobias Schmidt
fe40d8fce2
Merge pull request #159 from mischief/netdev-openbsd
...
collector: add openbsd support for netdev
2015-11-06 19:05:21 -05:00
Nick Owens
3eb2d6625a
collector: add openbsd support for netdev
2015-11-06 15:29:57 -08:00
Nick Owens
73ee8f5257
collector: add openbsd support to interrupt collector
2015-11-06 14:49:04 -08:00
Mikhail Salosin
e7359706d4
Do not use flag before flag.Parse() was called
2015-11-06 19:45:05 +03:00
Nick Owens
ebf3ef32f1
collector: sync bsd filesystem collector labels with linux
2015-11-02 19:16:17 -08:00
Nick Owens
b58d1fc971
collector: add openbsd suport to filesystem colector
2015-11-01 19:17:11 -08:00
Nick Owens
2cb489253c
collector: support 1,5,15m load averages for all unices
2015-10-31 06:04:24 -07:00
Nick Owens
eb79937340
switch to github.com/prometheus/common/log for logging
2015-10-30 13:20:06 -07:00
Mikhail Salosin
10e65086ea
Add NTP protocol version flag
2015-10-26 16:15:53 +03:00
Julius Volz
00e5d1334b
Merge pull request #142 from crisidev/master
...
Add load5 and load15 to linux load metric
2015-10-21 23:26:02 +02:00
Matteo Bigoi
e6ffeb4907
Reduce nesting in sanity check
2015-10-21 15:38:26 +00:00
Matteo Bigoi
8913d71ca4
Update end-to-end output for testing
2015-10-19 19:31:54 +00:00
Matteo Bigoi
5918be9a8c
Fix documentation and a possible slice bounds out of range
2015-10-19 19:31:31 +00:00
Kevin Lyda
36291d456e
Make filesystem collector more robust.
...
Current behaviour throws away all stats on any Statfs error. In practice
this is not useful. This turns such errors into debug log messages -
though silently ignoring them seems even more valid to me.
2015-10-18 19:47:45 +01:00
Matteo Bigoi
832ba9cc1d
Add load5 and load15 to linux load metric
2015-10-17 13:07:39 +00:00
Tobias Schmidt
0faa12cacd
Update end-to-end fixtures
2015-10-16 18:53:44 -04:00
Tobias Schmidt
500340bdde
Remove logging in IPVS tests
2015-10-16 18:53:44 -04:00
Tobias Schmidt
7e2b65f942
Clean up lint errors
2015-10-16 18:53:44 -04:00
Brian Brazil
07022b3555
Fix compilation on linux/arm64
2015-10-15 08:44:49 +01:00
Brian Brazil
59f1949a76
Merge pull request #135 from prometheus/remove-unneeded-make
...
Remove unneeded `make` in empty slice initialization.
2015-10-11 21:44:46 +01:00
Julius Volz
a25751e0b3
Fix occurreneces of initial uppercase in error strings.
2015-10-11 22:37:43 +02:00
Julius Volz
777a8ddd90
Remove unneeded make
in empty slice initialization.
2015-10-11 22:37:34 +02:00
Ilia Choly
9c0302571f
Add supervisord collector
2015-10-06 11:50:54 -04:00
Tobias Schmidt
52f79e699d
Fix uname collector for arm/ppc64/ppc64le architectures
...
The syscall.Utsname struct under arm/ppc64/ppc64le uses uint8 type
instead of int8.
2015-10-03 16:17:15 -04:00
Kirk Russell
88c30557c0
Fixed minor compile time error
2015-10-01 18:42:25 -04:00
Harmen
5d6fb852bb
fix copy-paste error in comment
...
Comment seems to be copied from netdev_linux.go, where it is correct.
2015-09-29 20:52:33 +02:00
Matthias Rampke
7c47338081
Add an end-to-end test.
...
This test runs a selection of collectors against the fixtures and
compares the output to a reference.
The uname and filesystem collectors are disabled because they use system
calls that cannot be fixtured easily.
2015-09-28 13:56:22 +00:00
Matthias Rampke
788ac9a859
Rearrange fixtures to match "real" proc and sys.
...
And add some missing fixtures for default collectors, even if they're
not read by tests yet.
2015-09-28 13:56:22 +00:00
Matthias Rampke
85eb47197f
Add a flag for the sysfs location.
...
Analogous to `collector.procfs`, but for `/sys`. Add tests for both.
2015-09-28 13:56:22 +00:00
Matthias Rampke
24c9db9600
Suppress log noise from textfile collector test.
2015-09-28 13:56:22 +00:00
Matthias Rampke
60dffaa9ff
Fix mdadm collector.
...
In the move to the procfs flag, I accidentally changed the filename.
2015-09-28 13:56:22 +00:00
Kirk Russell
89875cefe8
converted freebsd cpu metrics to seconds
2015-09-26 20:58:47 -04:00
Matthias Rampke
2d0d72b97d
Add license headers to all code files.
2015-09-26 17:44:39 +02:00
Matthias Rampke
20b551ab2b
Add flag to change the location of the procfs.
...
Remove all hardcoded references to `/proc`. For all collectors that do
not use `github.com/prometheus/procfs` yet, provide a wrapper to
generate the full paths.
Reformulate help strings, errors and comments to remove absolute
references to `/proc`.
This is a breaking change: the `-collector.ipvs.procfs` flag is removed
in favor of the general flag. Since it only affected that collector it
was only useful for development, so this should not cause many issues.
2015-09-26 15:32:10 +02:00
Björn Rabenstein
cf3aa37f1a
Merge pull request #120 from prometheus/move-to-common
...
Move from client_golang/text to common/expfmt
2015-09-17 14:38:27 +02:00
beorn7
8f182d2f02
Move from client_golang/text to common/expfmt
2015-09-17 14:05:56 +02:00
Julius Volz
7de03b8d6b
Merge pull request #119 from AlphaB/issue-95
...
Resolve go vet problems
2015-09-17 11:44:46 +02:00
Björn Rabenstein
ca74e8ab3e
Merge pull request #117 from TheTincho/forget-old-filesystems
...
Revamp the filesystem collector to use throw-away ConstMetrics.
2015-09-16 17:31:06 +02:00
Martín Ferrari
e3f217ea45
Build filesystem_common only on linux and freebsd.
2015-09-16 18:15:27 +03:00
Julius Volz
d8bf6daed9
Merge pull request #118 from TheTincho/forget-old-netdevs
...
Revamp the netdev collector to use throw-away ConstMetrics.
2015-09-16 16:36:16 +02:00
Martín Ferrari
0161a36fa5
Fix formatting and variable names.
2015-09-16 17:06:59 +03:00
Martín Ferrari
dace6dc48b
Fix issues from code review, and split common code into filesystem_common.go.
2015-09-16 16:34:34 +03:00
Mikhail Salosin
e41593de14
Add unix timestamp of the last service state change to runit collector
2015-09-15 19:46:59 +03:00
Martín Ferrari
13672ced48
Revamp the netdev collector to use throw-away ConstMetrics.
2015-09-15 15:31:51 +00:00
Mikhail Salosin
741fb66e1c
Resolve go vet problems
...
Issue prometheus/node_exporter#95
2015-09-15 17:09:10 +03:00
Martín Ferrari
8c2316e8a9
Revamp the filesystem collector to use throw-away ConstMetrics.
2015-09-15 12:17:15 +00:00
Jonas Große Sundrup
9f2aa24e12
Add collector for metrics of linux software raids
2015-09-11 18:36:39 +02:00
Julius Volz
7b39ccc144
Add Linux uname collector.
...
This creates a single metric like:
node_uname_info{domainname="(none)",machine="x86_64",nodename="desktop",release="3.16.0-48-generic",sysname="Linux",version="#64~14.04.1-Ubuntu SMP Thu Aug 20 23:03:57 UTC 2015"} 1
2015-09-11 14:32:18 +02:00
Julius Volz
02956d2bcc
Merge pull request #114 from chosenken/sockstat
...
Fixed sockstat test wording
2015-09-10 17:15:21 +02:00
Ken Herner
7569c6ce23
Initial implementation of file-nr
...
Fixed file-nr update function
Fixed file-nr test case
Fixed file-nr test case again
Fixed file-nr separator to tab
Updated file-nr to filenr.
Updated file-nr to filenr.
Fixed file-nr test cases, added comments
Remove reporting the second value from file-nr as it will alwasy be zero in linux 2.6 and greator
Renaming file-nr to filefd
Updated build constraint
Updates and code cleanup for filefd.
Updated enabledCollectors with the correct name for filefd
Fixed filefd test wording
2015-09-10 10:27:58 -04:00
Ken Herner
d6a1f0c7e3
Fixed sockstat test wording
2015-09-10 10:21:19 -04:00
Julius Volz
6f17231e44
Minor comment cleanups.
2015-09-10 12:21:25 +02:00
Julius Volz
dd5fc6a3ca
Merge pull request #111 from chosenken/sockstat
...
Implementation of /proc/net/sockstat collector
2015-09-10 12:19:47 +02:00
Ken Herner
d4adef9881
Added new metric mem_bytes that reports the number of bytes used by TCP/UDP memory
2015-09-09 14:05:16 -04:00
Ken Herner
60a57a15d5
Updated sockstat build constraint
2015-09-09 12:37:48 -04:00
Ken Herner
356e1bb866
Added sockstat test file
...
initial work on sockstat work
Fixed package name
Finished implementation of the sockstat plugin
missed a return value
Added sockstat to default plugins to start
Fixed scanner read on sockstat
fixed sockstat linux test for TCP alloc
update sockstat test case
Updated sockstat to return TCP and UDP memory in bytes instead of page count
2015-09-09 10:48:17 -04:00
Julius Volz
e13f910427
Fix mtime reporting in textfile collector, add tests.
2015-09-04 15:42:44 +02:00
Alexey Palazhchenko
38e6e6b672
Fix debug output
2015-08-28 08:54:36 +03:00
Alexis Letessier
0028abc077
megacli: prevent crash when drive temperature is N/A
...
Intel SSD do not report their temperature in MegaCLI output
Drive Temperature : N/A
2015-07-29 08:34:02 +02:00
Jari Takkala
21ce0cbda9
Add support for stats from /proc/net/snmp as well.
2015-07-15 12:39:28 -04:00
Siavash Safi
8c4a5b0f65
stats: Fix formatting.
2015-07-14 17:27:20 +04:30
Siavash Safi
dddb273dfc
Fix some error messages.
2015-07-14 13:58:54 +04:30
Siavash Safi
93708f3dda
devstat: Fix metric types, disable free metrics.
2015-07-14 13:58:53 +04:30
Siavash Safi
f8ede82488
cpu: Fix build constraints.
2015-07-14 13:58:53 +04:30
Siavash Safi
9e66d4f2ae
meminfo: Code cleanup.
2015-07-14 13:58:52 +04:30
Siavash Safi
d303a2ebc3
loadavg: Fix build constraints.
2015-07-14 13:58:52 +04:30
Siavash Safi
d80b2af492
loadavg: Split the collector for linux and other platforms.
2015-07-14 13:58:51 +04:30
Siavash Safi
720198e047
netdev: Code cleanup.
2015-07-14 13:58:51 +04:30
Siavash Safi
78bf63ffd8
filesystem: Code cleanup.
2015-07-14 13:58:50 +04:30
Siavash Safi
462b708742
cpu: Code cleanup.
2015-07-14 13:58:50 +04:30
Siavash Safi
f93125ba10
loadavg: Remove unnecessary global variable.
2015-07-14 13:58:49 +04:30
Siavash Safi
ccbea34465
filesystem: Remove unused const variable.
2015-07-14 13:58:49 +04:30
Siavash Safi
71abff14b1
devstat: Fix wrong labels for 'other' metrics.
2015-07-14 13:58:49 +04:30
Siavash Safi
c5669f0a1a
Add devstat collector for FreeBSD.
2015-07-14 13:58:48 +04:30
Siavash Safi
f7563fe7a2
Remove config from collectors.
2015-07-14 13:58:48 +04:30
Siavash Safi
1ebda4c0aa
Remove linux build contraint from meminfo test source code.
2015-07-14 13:58:48 +04:30
Siavash Safi
9b6843db60
netdev: use counters instead of gauges.
2015-07-14 13:58:47 +04:30
Siavash Safi
c651d7ccd9
meminfo: use bytes, fix type conversion bug.
2015-07-14 13:58:47 +04:30
Siavash Safi
a10ab2c102
Check caller's euid and egid when accessing /dev/mem on FreeBSD.
2015-07-14 13:58:47 +04:30
Siavash Safi
6ef3b7a4e8
Add filesystem collector for FreeBSD.
2015-07-14 13:58:46 +04:30
Siavash Safi
13d5f969a5
Removed freebsd build constraints from source code.
2015-07-14 13:58:46 +04:30
Siavash Safi
ae5aea0191
Add netdev collector for FreeBSD.
2015-07-14 13:58:46 +04:30
Siavash Safi
66e0171159
Rename linux collectors for build constraints.
2015-07-14 13:58:45 +04:30
Siavash Safi
d7ec7eac1f
Revert "Add build constraint for linux collectors."
2015-07-14 13:58:44 +04:30
Siavash Safi
4c5db2787e
Add meminfo collector for FreeBSD.
2015-07-14 13:58:44 +04:30
Siavash Safi
ad73b87d1e
Add build constraint for linux collectors.
2015-07-14 13:58:44 +04:30
Siavash Safi
23bb9c44b9
Add cpu collector for FreeBSD.
2015-07-14 13:58:43 +04:30
Siavash Safi
f9fa6d05cf
loadavg: Use getloadavg() from stdlib.h
2015-07-14 13:58:42 +04:30
Ian Hansen
64affe205b
Allows netdev devices to be ignored
2015-07-13 17:18:34 -06:00
Will Rouesnel
676ed5c6ac
Change "filesystem" to "mountpoint" to better reflect the new labels.
2015-07-07 02:40:19 +10:00
William Rouesnel
b22d2e9739
Add device,fsType collection to the filesystem exporter.
...
Collects more information for labelling scraped filesystems with the device
and fsType. This is useful for setting alerts which should change based on
filesystem type, or for filtering out shared mounts such as with NFS volumes.
2015-07-03 11:05:03 +10:00
Julius Volz
e65bc868fc
Switch logging from glog to github.com/prometheus/log.
2015-05-28 21:34:02 +02:00
Julius Volz
9f046cd88e
Run gofmt.
2015-05-28 21:22:03 +02:00
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