Holger Obermaier and Thomas Gruber
35510d3d39
Use strict JSON decoding
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
ef5e4c2604
Corrected json config
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
44401318e4
Enable same linters as in CI pipeline
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
2e60d3111c
Add config option to exclude metrics
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
e8734c02db
Add config option for manual device configuration
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
54650d40a6
Store query command for later reuse
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
e7050834f5
* Honor config option excluded devices
...
* Use device type in read command
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
893a0d69de
Improve error reporting
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
345119866a
Switch from lp.NewMessage to lp.NewMetric
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
ec917cf802
Switch from lp.NewMessage to lp.NewMetric
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
c7cfc0723b
Fix all linter warnings
2026-03-13 17:57:33 +01:00
Holger Obermaier and Thomas Gruber
4f2685f4c4
Addapt to new ccMessage syntax
2026-03-13 17:57:33 +01:00
Holger Obermaier
eeb60ba0df
Add target to build stripped executable
2026-03-12 11:39:43 +01:00
Holger Obermaier
a481a34dcd
Avoid duplicate error printing
2026-03-12 10:08:23 +01:00
Holger Obermaier and GitHub
b65576431e
Stricter json parsing ( #204 )
2026-03-11 15:59:14 +01:00
Holger Obermaier
a927565868
Fix router config syntax
2026-03-10 13:51:06 +01:00
Holger Obermaier
ddb504c5c6
Fix: Do not overwrite hostname tag if already set (e.g. by receivers)
2026-03-02 15:47:57 +01:00
Holger Obermaier
b1d6388624
Add modernize tool to Makefile
2026-02-24 15:38:13 +01:00
Holger Obermaier
d639c942d5
Fix: Close file /proc/cpuinfo only once
2026-02-20 14:01:51 +01:00
Holger Obermaier
539581f952
Format with gofumpt
2026-02-16 14:16:03 +01:00
Holger Obermaier
9bb21b807a
Remove depreceated function ccTopology.CpuList()
2026-02-16 11:34:54 +01:00
Holger Obermaier
47e68dfd2f
Remove debug output
2026-02-16 11:02:50 +01:00
Holger Obermaier
40fe94cabb
Embedded types should be at the top of the field list of a struct.
...
And there should be an empty line separating embedded fields from regular fields
2026-02-16 10:54:12 +01:00
Holger Obermaier
83720aa5be
Use cc-lib lp.FromBytes, do not use influxdb client directly
2026-02-16 09:57:24 +01:00
Holger Obermaier
5829f86f4a
Goroutine creation can be simplified using WaitGroup.Go (modernize)
2026-02-13 15:52:36 +01:00
Holger Obermaier
3eaea4ca62
upgraded go 1.24.0 => 1.25.0
2026-02-13 15:41:50 +01:00
Holger Obermaier and GitHub
64dab777a5
Replace deprecated functions ( #198 )
...
Replace depreceated functions
2026-02-13 15:15:17 +01:00
Holger Obermaier and GitHub
9908d76aac
Cleanup ( #197 )
...
* Removed unused code
* Use cclog for logging
* Wrap errors so that they can be unwrapped
* Revert wrong use of slices.Delete()
* Fix derivative values should be float
* Suggestions from the gocritic linter
* Fixed: interface method AddChannel must have all named params (inamedparam)
* Enable linter: errorlint
* Replace fmt.Sprintf("%d", i)) by strconv.Itoa(i) for improved performance
* Correct misspelled words
* Break up very long lines into multiple lines
* lp.NewMessage -> lp.NewMetric
* Preallocate slices of known length
2026-02-13 09:36:14 +01:00
Holger Obermaier and GitHub
fc297854d2
Golangci modernize fixes ( #196 )
...
* Fix: Loop can be simplified using slices.Contains
* Fix: for loop can be modernized using range over int
* Fix: interface{} can be replaced by any
* Fix: Replace m[k]=v loop with maps.Copy
* Run all linters with golangci-lint
2026-02-10 13:33:04 +01:00
Holger Obermaier and GitHub
cca0d23efa
Golangci lint fixes ( #195 )
...
* Add golangci-lin as make target
* Fix: could omit type ... from declaration; it will be inferred from the right-hand side (staticcheck)
* Fix func intArrayContains is unused (unused)
* Fix: could use strings.ReplaceAll instead (staticcheck)
* Fix: could expand call to math.Pow (staticcheck)
* Fix: could use tagged switch on `...` (staticcheck)
* Fix: Error return value of `...` is not checked (errcheck)
* Fix: ineffectual assignment to err (ineffassign)
* Fix: There is no need to wait for command completion
* Add cpustat, diskstat and schedstat config
* Use slices to exclude metrics
* Replaced stringArrayContains by slices.Contains
* Replace m[k]=v loop with maps.Copy
* Use module slices from the standard library. Remove use of golang.org/x/exp/slices
* Use SplitSeq and max to modernize code
2026-02-09 14:51:31 +01:00
Holger Obermaier and GitHub
7cff283001
Update ci ( #192 )
...
Add static analysis with GolangCI-Lint, govet and staticcheck
2026-01-23 14:39:39 +01:00
Holger Obermaier and GitHub
fa45d0d973
Update ci ( #191 )
...
* Add UBI 10 build
* Add Almalinux 10 build
* Use Appstream Repository from Red Hat Universal Base Image
* Use Appstream Repository from Almalinux
2026-01-21 15:20:12 +01:00
Holger Obermaier and GitHub
e70fd658f0
Update CI pipeline ( #189 )
...
* Updated Action "checkout" and "Setup golang"
* Update go-toolset to latest version
* Add golang-race dependency
* Update download-artifact and upload-artifact
2026-01-15 14:35:43 +01:00
Holger Obermaier
1ba08cd148
Add new requirements to module file
2022-12-23 11:42:46 +01:00
Holger Obermaier
b78e83b055
Do not allow unknown fields in JSON configuration file
2022-12-08 14:15:56 +01:00
Holger Obermaier
56b41a9e57
Updated to latest package versions
2022-12-06 14:12:21 +01:00
Holger Obermaier
ae98807ace
Some servers return "ConsumedPowerWatt":65535 instead of "ConsumedPowerWatt":null
2022-12-06 13:40:22 +01:00
Holger Obermaier
31a8e63d72
Use package hostlist to expand a host list
2022-12-01 09:48:34 +01:00
Holger Obermaier
6f1f33f3a5
Use package hostlist to expand a host list
2022-12-01 09:25:40 +01:00
Holger Obermaier
a29f0c7e3b
Added tests for hostlist Expand()
2022-11-29 17:21:09 +01:00
Holger Obermaier
4fb6ac0140
Add hostlist package
2022-11-29 14:04:31 +01:00
Holger Obermaier
5918f96fd8
Minimal formating changes
2022-11-24 09:48:44 +01:00
Holger Obermaier
8cb87a2165
Add IPMI receiver example configuration to receivers.json
2022-11-23 10:37:31 +01:00
Holger Obermaier
3e91a37dee
remove prefix enumeration like 01-...
2022-11-22 17:02:29 +01:00
Holger Obermaier
ed68baeada
Add IPMI metric: current
2022-11-22 15:32:41 +01:00
Holger Obermaier
888db31dbf
Try to use common metric tags across hardware vendors
2022-11-22 15:09:56 +01:00
Holger Obermaier
18bffd7c14
Add documentaion for IPMI receiver
2022-11-21 13:58:30 +01:00
Holger Obermaier
bd0105b370
Added config option to add ipmi-sensors command line options
2022-11-21 13:02:46 +01:00
Holger Obermaier
b1a8674c4c
Add receiver to gather remote IPMI sensor metrics
2022-11-18 16:55:11 +01:00
Holger Obermaier
234ad3c54e
Fix kernel panic for receiver config with missing receiver type
2022-11-17 11:33:13 +01:00
Holger Obermaier
7bb80780e0
Fixed computing number of physical packages for non continous physical package IDs (e.g. on Ampere Altra Q80-30)
2022-11-16 14:58:11 +01:00
Holger Obermaier
e66d52bb32
* Corrected json config in numastatsMetric.md
...
* Added some debug output to numastatsMetric.go
2022-11-16 14:10:25 +01:00
Holger Obermaier
9840d0193d
Do not mess up with the orignal configuration
2022-11-16 09:37:40 +01:00
Holger Obermaier
ce7eef8d30
Add running average power limit (RAPL) metric collector
2022-11-15 17:15:27 +01:00
Holger Obermaier
92e45ca62c
Add running average power limit (RAPL) metric collector
2022-11-15 17:09:26 +01:00
Holger Obermaier
fd10a279fc
Corrected some typos
2022-11-14 09:35:02 +01:00
Holger Obermaier
9e63d0ea59
Run ipmitool asynchron. Improved error handling.
2022-11-11 16:16:14 +01:00
Holger Obermaier
deb1bcfa2f
Correct type: /proc/stats -> /proc/stat
2022-10-13 15:01:39 +02:00
Holger Obermaier
7a67d5e25f
Check if at least one CPU with frequency information was detected
2022-10-13 14:53:55 +02:00
Holger Obermaier
503705d442
Allow multiple hosts to share the same client configuration
2022-08-26 11:55:53 +02:00
Holger Obermaier
7ccbf1ebe2
Allow global configuration for redfish devices username, password and endpoint.
2022-08-25 16:47:44 +02:00
Holger Obermaier
60ef0ed116
Fix for servers, which do not set status.state for thermals or powercontrols
2022-08-17 17:37:24 +02:00
Holger Obermaier
a8beec29cc
Skip non existing processor metrics URLs
2022-08-17 15:11:21 +02:00
Holger Obermaier
0dd430e7e9
Refactor redfishReceiver.
2022-08-16 15:14:20 +02:00
Holger Obermaier
f7b39d027b
url.JoinPath requires go 1.19. For now stay compatible with go 1.18
2022-08-15 15:25:59 +02:00
Holger Obermaier
eaf8b1941d
ioutils is depreceated
2022-08-15 15:25:20 +02:00
Holger Obermaier
62f6e4151a
Added readProcessorMetrics to read read thermal an power metrics per CPU / GPU
2022-08-15 15:11:29 +02:00
Holger Obermaier
acd092a977
Add redfish receiver documentation
2022-08-11 15:36:18 +02:00
Holger Obermaier
6eb8e3a1f5
Corrected comments. Added additional check
2022-08-10 17:00:47 +02:00
Holger Obermaier
8ba33568a6
Add reading of fan speeds
2022-08-10 16:24:21 +02:00
Holger Obermaier
2ca0359744
Add support to read thermal metrics
2022-08-10 10:30:59 +02:00
Holger Obermaier
f818bf4c11
Read durations as string from json config
2022-07-22 17:48:11 +02:00
Holger Obermaier
aedc1be277
Set HTTP timeout for redfish device connections
2022-07-22 12:06:02 +02:00
Holger Obermaier
c75d394e11
Corrected json syntax for interval and duration
2022-07-14 16:07:45 +02:00
Holger Obermaier
bae36473f7
Minimum requirement: golang version >= 1.18
2022-07-14 13:55:48 +02:00
Holger Obermaier
04819d9db2
Use mutex to ensure only on flush timer is running
2022-06-24 09:08:20 +02:00
Holger Obermaier
9ccc5a6ca7
Allow only one timer at a time
2022-06-23 21:53:02 +02:00
Holger Obermaier
b7dcbaebcf
Add drop rate, when send buffer is full
2022-06-23 18:27:03 +02:00
Holger Obermaier
a3ac8f2ead
Check that at least one sink is running
2022-06-23 15:44:02 +02:00
Holger Obermaier
8e7143a20a
Updated to latest modules
2022-06-23 11:49:18 +02:00
Holger Obermaier
3a10f7cfdb
Add memstats and topprocs metric
2022-06-23 11:44:06 +02:00
Holger Obermaier
0ca6d1a794
Improved dropping of metrics failed to send
2022-06-21 07:59:24 +02:00
Holger Obermaier
580d21d8bb
Fix: When sending metrics failed the batch size could be exceeded
2022-06-20 18:06:27 +02:00
Holger Obermaier
ee4bd558f1
Cleanup: Remove unused code
2022-05-06 11:44:57 +02:00
Holger Obermaier
186a62a86b
Fix: influx sink ignores config batch_size.
...
Feature: Add Redfish receiver
2022-05-04 13:00:56 +02:00
Holger Obermaier
e098c33179
Add some golang debug options
2022-05-04 12:48:46 +02:00
Holger Obermaier
c35ac9dba8
Flush if batch size is reached
2022-05-04 11:28:06 +02:00
Holger Obermaier
c019f8e7ad
Reuse tags and meta data tags
2022-05-03 17:55:33 +02:00
Holger Obermaier
fb6f6a4daa
Fix GPFS collector last state handling
2022-05-02 16:57:19 +02:00
Holger Obermaier
9d6d0dbd93
Delete empty tags and meta data tags
2022-04-20 14:39:26 +02:00
Holger Obermaier
c2d4272fdf
Clear workerInput channel after done event
2022-04-20 12:36:45 +02:00
Holger Obermaier
8c73095548
Allow to shutdown redfish receiver during metric read
2022-04-20 09:58:02 +02:00
Holger Obermaier
31c5c89a5a
Fix: Close done channel
2022-04-19 14:01:23 +02:00
Holger Obermaier
bf9c7e1830
Update requirements
2022-04-19 12:15:51 +02:00
Holger Obermaier
48d34bf564
Adopt sinks.json for new meta_as_tags usage
2022-04-19 12:06:53 +02:00
Holger Obermaier
a1d85fa886
Add redfish receiver
2022-04-19 12:05:03 +02:00
Holger Obermaier
96ee16398e
Removed unused done channel and wg wait group
2022-04-19 11:53:11 +02:00
Holger Obermaier
e7b8088c41
Extended go routine use case in sample receiver
2022-04-19 11:42:46 +02:00
Holger Obermaier
992b19d354
Move unit tag to meta data tags
2022-03-11 14:47:18 +01:00
Holger Obermaier
0b08ca9ae0
Simplified iota usage
2022-03-11 14:09:22 +01:00