]>
git.ipfire.org Git - oddments/collecty.git/log
Michael Tremer [Wed, 29 Oct 2025 14:45:55 +0000 (14:45 +0000)]
graphs: Implement adjusting the interval
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 14:45:26 +0000 (14:45 +0000)]
client: Send --since= and --until
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 14:44:44 +0000 (14:44 +0000)]
graphs: Remove extra colon
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 14:44:18 +0000 (14:44 +0000)]
client: Print any error messages from the daemon
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 12:56:13 +0000 (12:56 +0000)]
graphs: Remove unused GRAPH_TITLE macro
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 12:53:52 +0000 (12:53 +0000)]
graphs: Add an inline drawing function
This will help us to not sink into more preprocessor hell by adding a
little bit of stuff that is actually somewhat executed at runtime.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 11:50:35 +0000 (11:50 +0000)]
graphs: Include the unit with the macro
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 11:46:22 +0000 (11:46 +0000)]
graphs: Simplify the LINE macros
We should pass the strength of the line instead of replicating the same
macro again and again.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 11:41:21 +0000 (11:41 +0000)]
Makefile: Don't reset dist_doc_DATA
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 10:55:01 +0000 (10:55 +0000)]
graphs: Add cpufreq graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 29 Oct 2025 10:47:29 +0000 (10:47 +0000)]
graphs: Make it possible to set colors as a non-literal
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 26 Oct 2025 17:58:23 +0000 (17:58 +0000)]
sources: iptables: Make the static analyzer happy
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 26 Oct 2025 17:55:52 +0000 (17:55 +0000)]
sources: iptables: Initialize r
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 26 Oct 2025 17:54:57 +0000 (17:54 +0000)]
sources: cpufreq: Disable source if there is no support
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 26 Oct 2025 17:54:20 +0000 (17:54 +0000)]
source: Add option for sources to disable themselves
This happens when we don't have support for something and the source
usually asks to be disabled.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 26 Oct 2025 17:43:19 +0000 (17:43 +0000)]
sources: Collect cpufreq information
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 26 Oct 2025 17:42:46 +0000 (17:42 +0000)]
file: Implement path formatting into the quick read function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 26 Oct 2025 17:00:43 +0000 (17:00 +0000)]
DESIGN: Add some thoughts on the design of this project
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 26 Oct 2025 16:44:20 +0000 (16:44 +0000)]
graphs: Bps -> bps
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 26 Oct 2025 16:40:41 +0000 (16:40 +0000)]
source: Run some basic checks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 18:26:43 +0000 (18:26 +0000)]
jenkins: Install iptables-devel on Fedora
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 18:12:03 +0000 (18:12 +0000)]
sources: sensors: Collect current metrics
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 17:53:01 +0000 (17:53 +0000)]
sources: sensors: Collect energy sensors
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 17:47:45 +0000 (17:47 +0000)]
sources: sensors: Collect power metrics
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 17:32:16 +0000 (17:32 +0000)]
sources: sensors: Collect fan metrics
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 16:32:58 +0000 (16:32 +0000)]
sources: sensors: Remove the extra callback
We can just directly send the map to the collection function.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 16:23:12 +0000 (16:23 +0000)]
sources: sensors: Collect voltage/input sensors
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 16:19:56 +0000 (16:19 +0000)]
sources: sensors: Reset r if there are no features
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 15:55:53 +0000 (15:55 +0000)]
sources: sensors: Implement reading temp sensors
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 13:38:44 +0000 (13:38 +0000)]
configure: Fix detection for libsensors
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 10:23:24 +0000 (10:23 +0000)]
sources: iptables: Accumulate counters of the same comments
This is to be compatible with collectd and what we are currently using
in IPFire. When there is the same comment, we just add up the counters
so that we can collect metrics in different tables/chains.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 09:37:48 +0000 (09:37 +0000)]
sources: Add iptables
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 09:29:37 +0000 (09:29 +0000)]
sources: Terminate the daemon if no sources have been loaded
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 23 Oct 2025 09:25:24 +0000 (09:25 +0000)]
metrics: Constify the value pointers
Sometimes we will receive some data which has been constified and in
order to pass it on straight away, we will constify the value pointer,
too.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 20:49:07 +0000 (20:49 +0000)]
sources: disk: Convert temperate from mK to K
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 20:42:41 +0000 (20:42 +0000)]
graphs: Remove old print macros
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 20:31:37 +0000 (20:31 +0000)]
po: Update translations
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 20:28:01 +0000 (20:28 +0000)]
metrics: Only require one allocation
Since we know how many metrics we might expect from the beginning we can
realise the metrics as a variable array and only have one allocation.
Since this application is having a lot of allocations, this would quite
save a bit of memory fragmentation and load on the allocator.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 20:23:00 +0000 (20:23 +0000)]
sources: Collect metrics from suricata
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 19:46:04 +0000 (19:46 +0000)]
source: Migrate RRDs if we have lost fields
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 19:31:22 +0000 (19:31 +0000)]
sources: hostapd: Convert rates after they have been parsed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 19:26:42 +0000 (19:26 +0000)]
source: Don't try to commit metrics too soon
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 19:12:55 +0000 (19:12 +0000)]
source: Fetch the last update timestamp
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 18:55:37 +0000 (18:55 +0000)]
source: Use rrd_info_r() to check if a RRD file exists
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 18:00:01 +0000 (18:00 +0000)]
queue: Remove the old way to submit sample data
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 17:50:29 +0000 (17:50 +0000)]
sources: hostapd: Migrate to new metrics submission
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 17:44:44 +0000 (17:44 +0000)]
sources: disk: Create a metrics object and populate as we go
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 17:41:53 +0000 (17:41 +0000)]
metrics: Add support for bool
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 17:17:02 +0000 (17:17 +0000)]
sources: Convert all sources to submit metrics the new way
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 16:55:15 +0000 (16:55 +0000)]
metrics: Create a shorthand to submit stats with less code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 16:26:45 +0000 (16:26 +0000)]
file: Implement parsing the entire file as JSON object
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 16:25:27 +0000 (16:25 +0000)]
Add a new metrics object
When we have larger RRD files, it will become increasingly difficult to
serialize the format strings. This new object is supposed to store
metrics more efficiently and with more metadata.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 10:39:32 +0000 (10:39 +0000)]
jenkins: Install libudev-dev on Debian-based machines
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 22 Oct 2025 10:37:37 +0000 (10:37 +0000)]
daemon: Release memory when the system is under pressure
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 19:25:52 +0000 (19:25 +0000)]
sources: disk: Read SMART data if available
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 18:05:52 +0000 (18:05 +0000)]
source: Implement actually migrating databases
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 17:36:40 +0000 (17:36 +0000)]
source: Check if RRD files need migration
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 15:52:53 +0000 (15:52 +0000)]
sources: Add source to collect disk IO stats
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 15:52:26 +0000 (15:52 +0000)]
file: Return the error code if we could not read the file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 14:28:51 +0000 (14:28 +0000)]
daemon: Connect to udev
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 14:12:50 +0000 (14:12 +0000)]
colors: Define a special color for rx/tx traffic
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 14:10:10 +0000 (14:10 +0000)]
graphs: Add a graph to show rate information
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 14:09:27 +0000 (14:09 +0000)]
sources: Correct rate information of hostapd stations
hostapd returns this in hundredth of kilobits. We will store it in bits.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 13:53:38 +0000 (13:53 +0000)]
graphs: Try to make the signal graph a bit more colourful
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 13:37:44 +0000 (13:37 +0000)]
graphs: Add bandwidth graphs for hostapd stations
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 10:46:51 +0000 (10:46 +0000)]
graphs: Rename hostapd station signal graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 10:44:17 +0000 (10:44 +0000)]
po: Add telemetry.po to .gitignore
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 10:42:25 +0000 (10:42 +0000)]
graphs: hostapd: Add graph that shows the station signal
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 10:41:53 +0000 (10:41 +0000)]
graphs: Add some more macros
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 10:41:20 +0000 (10:41 +0000)]
sources: Take VDEFs from the graphs macros
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 07:26:25 +0000 (07:26 +0000)]
command: Cleanup events before closing file descriptors
This makes the trace slightly cleaner when FDs will be removed from the
event loop before they are closed and not the other way round.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 21 Oct 2025 07:26:01 +0000 (07:26 +0000)]
command: Defer cleaning up the command to avoid zombies
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 17:13:54 +0000 (17:13 +0000)]
graphs: Simplify headers by removing option to pass extra arguments
We should keep it so that the macros print simple things and we won't
have to deal with the extra arguments.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 17:10:11 +0000 (17:10 +0000)]
graphs: Add automatic field composition for objects
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 14:29:29 +0000 (14:29 +0000)]
sources: hostapd: Don't use colons
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 14:28:39 +0000 (14:28 +0000)]
queue: Don't allow colons in object names
This breaks generating graphs where colons are used as delimiter.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 14:23:02 +0000 (14:23 +0000)]
sources: hostapd: Zero-pad MAC addresses
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 14:16:56 +0000 (14:16 +0000)]
client: Pass the object in the options array
This makes it all a little bit easier
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 13:26:58 +0000 (13:26 +0000)]
sources: Add source for hostapd clients
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 13:25:37 +0000 (13:25 +0000)]
file: Only finish parsing when we have found enough fields
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 13:24:51 +0000 (13:24 +0000)]
file: There is no need to attempt to parse empty lines
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 13:23:29 +0000 (13:23 +0000)]
file: Add function to run the parser on a single line
This is useful if we want to use the parser when we cannot walk through
the file line by line.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 10:15:29 +0000 (10:15 +0000)]
daemon: Allow to select sources on the CLI
This is only useful for testing to basically disable all other sources
for better log readability.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 20 Oct 2025 09:04:06 +0000 (09:04 +0000)]
sources: Properly turn off the event when we disable a source
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 19 Oct 2025 13:40:14 +0000 (13:40 +0000)]
po: Update translations
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 19 Oct 2025 13:39:44 +0000 (13:39 +0000)]
Rename the entire project to "IPFire Telemetry"
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 19 Oct 2025 13:08:08 +0000 (13:08 +0000)]
source: Disable all sources that fail all the time
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 19 Oct 2025 13:03:05 +0000 (13:03 +0000)]
graphs: Always show the top of the memory graph
I am not sure whether this is what I actually want but some members on
the team think that it should be this way. So I will commit this for
now and maybe later revert it again.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 10 Oct 2025 09:57:14 +0000 (09:57 +0000)]
sources: df: Cleanup /proc/self/mounts on error
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Oct 2025 17:44:23 +0000 (17:44 +0000)]
command: Close the pidfd
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 20:46:13 +0000 (20:46 +0000)]
file: Reset the file pointer on error
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 20:39:06 +0000 (20:39 +0000)]
file: Another attempt to make the static analyzer happy
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 20:33:15 +0000 (20:33 +0000)]
file: Try to make the static analyzer happy
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 20:30:24 +0000 (20:30 +0000)]
graphs: Add a memory graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 20:07:02 +0000 (20:07 +0000)]
proc: Also convert total memory to bytes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 20:06:35 +0000 (20:06 +0000)]
queue: Flush all data when we want to draw a graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 16:33:10 +0000 (16:33 +0000)]
graphs: Write title/vlabel to the stack
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 16:24:14 +0000 (16:24 +0000)]
po: Update translations
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 16:23:14 +0000 (16:23 +0000)]
configure: Add option to enable tests
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Oct 2025 16:10:12 +0000 (16:10 +0000)]
util: Remove the old file walking functions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>