Commit Graph

170 Commits

Author SHA1 Message Date
Holger Obermaier
9bd8a3a90b Add documentation 2022-01-26 11:38:43 +01:00
Thomas Roehl
7f77cad056 Don't wait too long in case of --once 2022-01-25 17:49:15 +01:00
Thomas Roehl
2925ad9f40 Use ccLogger anywhere 2022-01-25 17:43:10 +01:00
Holger Obermaier
b4fde31626 Add documentation 2022-01-25 17:20:20 +01:00
Thomas Roehl
8f9bff7efd Merge branch 'develop' of github.com:ClusterCockpit/cc-metric-collector into develop 2022-01-25 16:41:54 +01:00
Thomas Roehl
bafc6322e6 Change to own Logger 2022-01-25 16:40:02 +01:00
Holger Obermaier
a40d1c954b Fix data type mismatch 2022-01-25 16:33:23 +01:00
Thomas Roehl
99aaece6c2 Activate --once option and return proper exit Code with os.Exit() 2022-01-25 15:46:41 +01:00
Thomas Gruber
200af84c54
Modularize the whole thing (#16)
* Use channels, add a metric router, split up configuration and use extended version of Influx line protocol internally

* Use central timer for collectors and router. Add expressions to router

* Add expression to router config

* Update entry points

* Start with README

* Update README for CCMetric

* Formatting

* Update README.md

* Add README for MultiChanTicker

* Add README for MultiChanTicker

* Update README.md

* Add README to metric router

* Update main README

* Remove SinkEntity type

* Update README for sinks

* Update go files

* Update README for receivers

* Update collectors README

* Update collectors README

* Use seperate page per collector

* Fix for tempstat page

* Add docs for customcmd collector

* Add docs for ipmistat collector

* Add docs for topprocs collector

* Update customCmdMetric.md

* Use seconds when calculating LIKWID metrics

* Add IB metrics ib_recv_pkts and ib_xmit_pkts

* Drop domain part of host name

* Updated to latest stable version of likwid

* Define source code dependencies in Makefile

* Add GPFS / IBM Spectrum Scale collector

* Add vet and staticcheck make targets

* Add vet and staticcheck make targets

* Avoid go vet warning:
struct field tag `json:"..., omitempty"` not compatible with reflect.StructTag.Get: suspicious space in struct tag value
struct field tag `json:"...", omitempty` not compatible with reflect.StructTag.Get: key:"value" pairs not separated by spaces

* Add sample collector to README.md

* Add CPU frequency collector

* Avoid staticcheck warning: redundant return statement

* Avoid staticcheck warning: unnecessary assignment to the blank identifier

* Simplified code

* Add CPUFreqCollectorCpuinfo
a metric collector to measure the current frequency of the CPUs
as obtained from /proc/cpuinfo
Only measure on the first hyperthread

* Add collector for NFS clients

* Move publication of metrics into Flush() for NatsSink

* Update GitHub actions

* Refactoring

* Avoid vet warning: Println arg list ends with redundant newline

* Avoid vet warning struct field commands has json tag but is not exported

* Avoid vet warning: return copies lock value.

* Corrected typo

* Refactoring

* Add go sources in internal/...

* Bad separator in Makefile

* Fix Infiniband collector

Co-authored-by: Holger Obermaier <40787752+ho-ob@users.noreply.github.com>
2022-01-25 15:37:43 +01:00
Holger Obermaier
222862af32 Avoid vet warning struct field commands has json tag but is not exported 2022-01-25 11:15:36 +01:00
Holger Obermaier
df77c3fd60 Avoid vet warning: Println arg list ends with redundant newline 2022-01-25 10:33:20 +01:00
Holger Obermaier
e095e4f202 Refactoring 2022-01-25 09:47:24 +01:00
Holger Obermaier
be8c92676a Refactoring 2022-01-24 22:03:13 +01:00
Holger Obermaier
2026c3acd9 Fixed topology detection 2022-01-24 20:22:08 +01:00
Holger Obermaier
7953629940 Update GitHub actions 2022-01-24 15:55:15 +01:00
Holger Obermaier
8d314ecb19 Add CPUFreqCollectorCpuinfo
a metric collector to measure the current frequency of the CPUs
as obtained from /proc/cpuinfo
Only measure on the first hyperthread
2022-01-24 13:10:33 +01:00
Holger Obermaier
daa7c6bf99 Simplified code 2022-01-24 11:31:45 +01:00
Holger Obermaier
25b9268b24 Avoid staticcheck warning: unnecessary assignment to the blank identifier 2022-01-21 15:20:53 +01:00
Holger Obermaier
5dd2af4e8f Avoid staticcheck warning: redundant return statement 2022-01-21 14:35:52 +01:00
Holger Obermaier
83b784e6f0 Add CPU frequency collector 2022-01-21 09:59:57 +01:00
Holger Obermaier
0feb880c3b Correct go syntax in README.md 2022-01-20 16:32:10 +01:00
Holger Obermaier
5d263addde Avoid go vet warning:
struct field tag `json:"..., omitempty"` not compatible with reflect.StructTag.Get: suspicious space in struct tag value
2022-01-20 12:38:52 +01:00
Holger Obermaier
8860b8d0f7 Add vet and staticcheck make targets 2022-01-20 12:13:50 +01:00
Holger Obermaier
f91150f4ba Add vet and staticcheck make targets 2022-01-20 12:09:22 +01:00
Holger Obermaier
dcb5b4add5 Define source code dependencies in Makefile 2022-01-19 16:41:55 +01:00
Holger Obermaier
f17719113d Updated to latest stable version of likwid 2022-01-19 15:55:48 +01:00
Holger Obermaier
7b29a14e1a Drop domain part of host name 2022-01-19 15:35:40 +01:00
Holger Obermaier
82b10b365e Fix to work with golang 1.16 2022-01-19 14:52:37 +01:00
Holger Obermaier
b97c588660 Add GPFS / IBM Spectrum Scale collector 2022-01-19 14:25:58 +01:00
Holger Obermaier
11e40c6ee3 Add IB metrics ib_recv_pkts and ib_xmit_pkts 2022-01-19 10:15:41 +01:00
Thomas Roehl
43a8ea683d Cast collector measurement duration to seconds. Thanks to KIT 2022-01-06 15:25:51 +01:00
Thomas Gruber
15cf16b46f
Add Github Action to build RPM (#14)
* Update SPEC file

* Add clean target to Makefile

* add rpmbuild action

* Add missing build dependency

* Fix package name of golang for CentOS8

* Change outputs

* Fix file list and build requires

* Fix for file list

* Also upload SRPM
2021-11-29 16:04:50 +01:00
Thomas Roehl
28163f5d2e Format fixes 2021-11-29 15:32:58 +01:00
Thomas Roehl
6d14e66505 Fix missing colon in netstat collector 2021-11-26 19:02:09 +01:00
Thomas Roehl
3a13a41a15 Catch panic in Nvidia Go Bindings 2021-11-26 19:01:47 +01:00
Thomas Roehl
75f5ac8980 Catch panicing collectors (hello Nvidia Go Bindings) late. 2021-11-26 19:01:31 +01:00
Thomas Roehl
7a7ce0c1b3 Catch panicing collectors (hello Nvidia Go Bindings) late. 2021-11-26 19:01:12 +01:00
Thomas Roehl
cb8221e73c Read config JSON only if there is any 2021-11-26 18:19:45 +01:00
Thomas Roehl
8d643bb5e8 Set default for topprocs collector to Top2 processes if no config is given 2021-11-26 18:19:26 +01:00
Thomas Roehl
f5b7da5046 Use configuration with all supported collectors for CI. Fixes #13 2021-11-26 18:15:04 +01:00
Thomas Roehl
bf43f6d975 Updated README.md for collectors. Fix TODO 2021-11-26 15:58:59 +01:00
Thomas Roehl
734d9e5b8f Updated README.md for collectors. Not finished 2021-11-26 15:57:11 +01:00
Thomas Roehl
325d97df96 Updated contributing section for sinks 2021-11-26 15:56:52 +01:00
Thomas Roehl
09e15c9949 Update receiver README.md 2021-11-26 14:19:07 +01:00
Thomas Roehl
32d5a5b98f Update sink README.md 2021-11-26 14:18:59 +01:00
Thomas Roehl
24bf9590ee Update sink README.md 2021-11-26 14:10:22 +01:00
Thomas Roehl
fcf8dfb680 Update global README.md 2021-11-26 14:10:12 +01:00
Thomas Gruber
3997984714
Temp collector from sysfs hwmon (#8)
* Add collector for hwmon temperature

* Comment out local tag overrides

* Add temperature collector to README

* Update temperature collector with own config parser
2021-11-25 18:19:09 +01:00
Thomas Gruber
1e7a75598e
Add collector to read data from ipmitool or ipmi-sensors (fallback) (#9)
* Add collector to read data from ipmitool or ipmi-sensors

* Update IPMI collector to use own config

* Add 'ipmitool sensor' parser
2021-11-25 18:15:56 +01:00
Thomas Roehl
c6edf7aed4 Fix application name 2021-11-25 17:54:58 +01:00