mirror of
https://github.com/ClusterCockpit/cc-metric-collector.git
synced 2024-12-25 15:09:05 +01:00
6ab45dd3ec
* Add cpu_used (all-cpu_idle) to CpustatCollector * Update to line-protocol/v2 * Update runonce.yml with Golang 1.20 * Update fsnotify in LIKWID Collector * Use not a pointer to line-protocol.Encoder * Simplify Makefile * Use only as many arguments as required * Allow sum function to handle non float types * Allow values to be a slice of type float64, float32, int, int64, int32, bool * Use generic function to simplify code * Add missing case for type []int32 * Use generic function to compute minimum * Use generic function to compute maximum * Use generic function to compute average * Add error value to sumAnyType * Use generic function to compute median * For older versions of go slices is not part of the installation * Remove old entries from go.sum * Use simpler sort function * Compute metrics ib_total and ib_total_pkts * Add aggregated metrics. Add missing units * Update likwidMetric.go Fixes a potential bug when `fsnotify.NewWatcher()` fails with an error * Completly avoid memory allocations in infinibandMetric read() * Fixed initialization: Initalization and measurements should run in the same thread * Add safe.directory to Release action * Fix path after installation to /usr/bin after installation * ioutil.ReadFile is deprecated: As of Go 1.16, this function simply calls os.ReadFile * Switch to package slices from the golang 1.21 default library * Read file line by line * Read file line by line * Read file line by line * Use CamelCase * Use CamelCase * Fix function getNumaDomain, it always returned 0 * Avoid type conversion by using Atoi Avoid copying structs by using pointer access Increase readability with CamelCase variable names * Add caching * Cache CpuData * Cleanup * Use init function to initalize cache structure to avoid multi threading problems * Reuse information from /proc/cpuinfo * Avoid slice cloning. Directly use the cache * Add DieList * Add NumaDomainList and SMTList * Cleanup * Add comment * Lookup core ID from /sys/devices/system/cpu, /proc/cpuinfo is not portable * Lookup all information from /sys/devices/system/cpu, /proc/cpuinfo is not portable * Correctly handle lists from /sys * Add Simultaneous Multithreading siblings * Replace deprecated thread_siblings_list by core_cpus_list * Reduce number of required slices * Allow to send total values per core, socket and node * Send all metrics with same time stamp calcEventsetMetrics does only computiation, counter measurement is done before * Input parameters should be float64 when evaluating to float64 * Send all metrics with same time stamp calcGlobalMetrics does only computiation, counter measurement is done before * Remove unused variable gmresults * Add comments * Updated go packages * Add build with golang 1.21 * Switch to checkout action version 4 * Switch to setup-go action version 4 * Add workflow_dispatch to allow manual run of workflow * Add workflow_dispatch to allow manual run of workflow * Add release build jobs to runonce.yml * Switch to golang 1.20 for RHEL based distributions * Use dnf to download golang * Remove golang versions before 1.20 * Upgrade Ubuntu focal -> jammy * Pipe golang tar package directly to tar * Update golang version * Fix Ubuntu version number * Add links to ipmi and redfish receivers * Fix http server addr format * github.com/influxdata/line-protocol -> github.com/influxdata/line-protocol/v2/lineprotocol * Corrected spelling * Add some comments * github.com/influxdata/line-protocol -> github.com/influxdata/line-protocol/v2/lineprotocol * Allow other fields not only field "value" * Add some basic debugging documentation * Add some basic debugging documentation * Use a lock for the flush timer * Add tags in lexical order as required by AddTag() * Only access meta data, when it gets used as tag * Use slice to store lexialicly orderd key value pairs * Increase golang version requirement to 1.20. * Avoid package cmp to allow builds with golang v1.20 * Fix: Error NVML library not found did crash cc-metric-collector with "SIGSEGV: segmentation violation" * Add config option idle_timeout * Add basic authentication support * Add basic authentication support * Avoid unneccessary memory allocations * Add documentation for send_*_total values * Use generic package maps to clone maps * Reuse flush timer * Add Influx client options * Reuse ccTopology functionality * Do not store unused topology information * Add batch_size config * Cleanup * Use stype and stype-id for the NIC in NetstatCollector * Wait for concurrent flush operations to finish * Be more verbose in error messages * Reverted previous changes. Made the code to complex without much advantages * Use line protocol encoder * Go pkg update * Stop flush timer, when immediatelly flushing * Fix: Corrected unlock access to batch slice * Add config option to specify whether to use GZip compression in influx write requests * Add asynchron send of encoder metrics * Use DefaultServeMux instead of github.com/gorilla/mux * Add config option for HTTP keep-alives * Be more strict, when parsing json * Add config option for HTTP request timeout and Retry interval * Allow more then one background send operation * Fix %sysusers_create_package args (#108) %sysusers_create_package requires two arguments. See: https://github.com/systemd/systemd/blob/main/src/rpm/macros.systemd.in#L165 * Add nfsiostat to list of collectors --------- Co-authored-by: Holger Obermaier <40787752+ho-ob@users.noreply.github.com> Co-authored-by: Holger Obermaier <holgerob@gmx.de> Co-authored-by: Obihörnchen <obihoernchende@gmail.com>
106 lines
4.7 KiB
Modula-2
106 lines
4.7 KiB
Modula-2
module github.com/ClusterCockpit/cc-metric-collector
|
|
|
|
go 1.20
|
|
|
|
require (
|
|
github.com/ClusterCockpit/cc-units v0.4.0
|
|
github.com/ClusterCockpit/go-rocm-smi v0.3.0
|
|
github.com/NVIDIA/go-nvml v0.12.0-1
|
|
github.com/PaesslerAG/gval v1.2.2
|
|
github.com/fsnotify/fsnotify v1.6.0
|
|
github.com/gorilla/mux v1.8.0
|
|
github.com/influxdata/influxdb-client-go/v2 v2.12.3
|
|
github.com/influxdata/line-protocol v0.0.0-20210922203350-b1ad95c89adf
|
|
github.com/influxdata/line-protocol/v2 v2.2.1
|
|
github.com/nats-io/nats.go v1.30.2
|
|
github.com/prometheus/client_golang v1.17.0
|
|
github.com/stmcginnis/gofish v0.14.0
|
|
github.com/tklauser/go-sysconf v0.3.12
|
|
golang.design/x/thread v0.0.0-20210122121316-335e9adffdf1
|
|
golang.org/x/exp v0.0.0-20231006140011-7918f672742d
|
|
golang.org/x/sys v0.13.0
|
|
)
|
|
|
|
require (
|
|
github.com/BurntSushi/toml v1.3.2 // indirect
|
|
github.com/CloudyKit/fastprinter v0.0.0-20200109182630-33d98a066a53 // indirect
|
|
github.com/CloudyKit/jet/v6 v6.2.0 // indirect
|
|
github.com/Joker/jade v1.1.3 // indirect
|
|
github.com/Shopify/goreferrer v0.0.0-20220729165902-8cddb4f5de06 // indirect
|
|
github.com/andybalholm/brotli v1.0.5 // indirect
|
|
github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect
|
|
github.com/aymerick/douceur v0.2.0 // indirect
|
|
github.com/beorn7/perks v1.0.1 // indirect
|
|
github.com/bytedance/sonic v1.10.2 // indirect
|
|
github.com/cespare/xxhash/v2 v2.2.0 // indirect
|
|
github.com/chenzhuoyu/base64x v0.0.0-20230717121745-296ad89f973d // indirect
|
|
github.com/chenzhuoyu/iasm v0.9.0 // indirect
|
|
github.com/deepmap/oapi-codegen v1.15.0 // indirect
|
|
github.com/fatih/structs v1.1.0 // indirect
|
|
github.com/flosch/pongo2/v4 v4.0.2 // indirect
|
|
github.com/gabriel-vasile/mimetype v1.4.2 // indirect
|
|
github.com/gin-contrib/sse v0.1.0 // indirect
|
|
github.com/gin-gonic/gin v1.9.1 // indirect
|
|
github.com/go-playground/locales v0.14.1 // indirect
|
|
github.com/go-playground/universal-translator v0.18.1 // indirect
|
|
github.com/go-playground/validator/v10 v10.15.5 // indirect
|
|
github.com/goccy/go-json v0.10.2 // indirect
|
|
github.com/golang/protobuf v1.5.3 // indirect
|
|
github.com/golang/snappy v0.0.4 // indirect
|
|
github.com/gomarkdown/markdown v0.0.0-20230922112808-5421fefb8386 // indirect
|
|
github.com/google/uuid v1.3.1 // indirect
|
|
github.com/gorilla/css v1.0.0 // indirect
|
|
github.com/iris-contrib/schema v0.0.6 // indirect
|
|
github.com/josharian/intern v1.0.0 // indirect
|
|
github.com/json-iterator/go v1.1.12 // indirect
|
|
github.com/kataras/blocks v0.0.8 // indirect
|
|
github.com/kataras/golog v0.1.9 // indirect
|
|
github.com/kataras/iris/v12 v12.2.7 // indirect
|
|
github.com/kataras/pio v0.0.12 // indirect
|
|
github.com/kataras/sitemap v0.0.6 // indirect
|
|
github.com/kataras/tunnel v0.0.4 // indirect
|
|
github.com/klauspost/compress v1.17.0 // indirect
|
|
github.com/klauspost/cpuid/v2 v2.2.5 // indirect
|
|
github.com/labstack/echo/v4 v4.11.1 // indirect
|
|
github.com/labstack/gommon v0.4.0 // indirect
|
|
github.com/leodido/go-urn v1.2.4 // indirect
|
|
github.com/mailgun/raymond/v2 v2.0.48 // indirect
|
|
github.com/mailru/easyjson v0.7.7 // indirect
|
|
github.com/mattn/go-colorable v0.1.13 // indirect
|
|
github.com/mattn/go-isatty v0.0.19 // indirect
|
|
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
|
|
github.com/microcosm-cc/bluemonday v1.0.25 // indirect
|
|
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
|
github.com/modern-go/reflect2 v1.0.2 // indirect
|
|
github.com/nats-io/nats-server/v2 v2.8.4 // indirect
|
|
github.com/nats-io/nkeys v0.4.5 // indirect
|
|
github.com/nats-io/nuid v1.0.1 // indirect
|
|
github.com/pelletier/go-toml/v2 v2.1.0 // indirect
|
|
github.com/pkg/errors v0.9.1 // indirect
|
|
github.com/prometheus/client_model v0.5.0 // indirect
|
|
github.com/prometheus/common v0.44.0 // indirect
|
|
github.com/prometheus/procfs v0.12.0 // indirect
|
|
github.com/russross/blackfriday/v2 v2.1.0 // indirect
|
|
github.com/schollz/closestmatch v2.1.0+incompatible // indirect
|
|
github.com/shopspring/decimal v1.3.1 // indirect
|
|
github.com/sirupsen/logrus v1.9.3 // indirect
|
|
github.com/tdewolff/minify/v2 v2.12.9 // indirect
|
|
github.com/tdewolff/parse/v2 v2.6.8 // indirect
|
|
github.com/tklauser/numcpus v0.6.1 // indirect
|
|
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
|
|
github.com/ugorji/go/codec v1.2.11 // indirect
|
|
github.com/valyala/bytebufferpool v1.0.0 // indirect
|
|
github.com/valyala/fasttemplate v1.2.2 // indirect
|
|
github.com/vmihailenco/msgpack/v5 v5.4.0 // indirect
|
|
github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect
|
|
github.com/yosssi/ace v0.0.5 // indirect
|
|
golang.org/x/arch v0.5.0 // indirect
|
|
golang.org/x/crypto v0.14.0 // indirect
|
|
golang.org/x/net v0.16.0 // indirect
|
|
golang.org/x/text v0.13.0 // indirect
|
|
golang.org/x/time v0.3.0 // indirect
|
|
google.golang.org/protobuf v1.31.0 // indirect
|
|
gopkg.in/ini.v1 v1.67.0 // indirect
|
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
|
)
|