]>
git.ipfire.org Git - collecty.git/log
Michael Tremer [Sun, 5 Oct 2025 15:16:39 +0000 (15:16 +0000)]
graphs: Add uptime graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 15:02:27 +0000 (15:02 +0000)]
string: Check format strings
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 14:37:12 +0000 (14:37 +0000)]
sources: Add source for the system's uptime
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 14:23:41 +0000 (14:23 +0000)]
string: Make all functions static
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 14:23:09 +0000 (14:23 +0000)]
string: Add formatting functions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 14:08:53 +0000 (14:08 +0000)]
string: Add our string comparison function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 14:04:30 +0000 (14:04 +0000)]
util: Add macros for branch prediction
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 14:03:24 +0000 (14:03 +0000)]
sources: Add softirqs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 13:55:45 +0000 (13:55 +0000)]
queue: Fail if the object contains invalid characters
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 13:27:31 +0000 (13:27 +0000)]
sources: Add sources for IPv4 fragmentation information
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 11:55:23 +0000 (11:55 +0000)]
Add source for memory usage
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 5 Oct 2025 10:55:19 +0000 (10:55 +0000)]
daemon: Use macros to convert time
That way, I will hopefully not get the maths wrong all the time.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 16:07:06 +0000 (16:07 +0000)]
source: Complain if the heartbeat was called too late
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 16:02:24 +0000 (16:02 +0000)]
source: Complain if something stalls the event loop
This source will also be de-prioritized so that other sources can work
better.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 16:02:09 +0000 (16:02 +0000)]
sources: Add a test that stalls the event loop
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 15:19:11 +0000 (15:19 +0000)]
source: Lower the heartbeat if a source is in error state
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 15:09:15 +0000 (15:09 +0000)]
sources: Store result codes and check for patterns
That way we can disable any sources which constantly fail and we might
as well detect flapping.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 14:58:18 +0000 (14:58 +0000)]
sources: Add some tests
Oone constantly returns an error, the other one returns an error with a
probability of 50%. They are to test the internal error handling.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 13:26:55 +0000 (13:26 +0000)]
sources: Add source for disk usage
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 12:51:21 +0000 (12:51 +0000)]
po: Update translations
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 12:49:49 +0000 (12:49 +0000)]
sources: Add PSI for I/O
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 12:47:00 +0000 (12:47 +0000)]
sources: Add PSI for memory
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 12:43:59 +0000 (12:43 +0000)]
sources: Add PSI for CPU
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 12:01:50 +0000 (12:01 +0000)]
graphs: Make it configurable if the graph is reversed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 4 Oct 2025 11:55:50 +0000 (11:55 +0000)]
Add a processor graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 16:23:15 +0000 (16:23 +0000)]
sources: Add source for processor usage
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 15:15:15 +0000 (15:15 +0000)]
graphs: Add context switch graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 15:12:05 +0000 (15:12 +0000)]
graphs: conntrack: Remove unused color definitions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 15:07:31 +0000 (15:07 +0000)]
graphs: Add macro to format headers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 15:03:44 +0000 (15:03 +0000)]
graphs: Add macros to draw transparent areas easier
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 14:54:27 +0000 (14:54 +0000)]
graphs: Consolidate macros with and without label
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 14:40:22 +0000 (14:40 +0000)]
graphs: Create macros to write less code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 12:47:48 +0000 (12:47 +0000)]
po: Update translations
This is to make "make distcheck" happy.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 12:46:08 +0000 (12:46 +0000)]
graphs: Add a conntrack graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 11:37:07 +0000 (11:37 +0000)]
graph: Move all stuff that is needed to draw graphs into a new header
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 11:31:44 +0000 (11:31 +0000)]
daemon: Rename modules to sources
This makes more sense as the graphs have now been split into their own
modules, and so we won't have a too generic term for the sources.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 11:14:11 +0000 (11:14 +0000)]
modules: Rename methods to impl
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 11:06:34 +0000 (11:06 +0000)]
graph: Measure the time it takes to generate a graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 11:02:04 +0000 (11:02 +0000)]
graph: Add title and vertical label
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:44:26 +0000 (10:44 +0000)]
graph: Always pass --rigid
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:40:29 +0000 (10:40 +0000)]
graph: Add upper and lower limits
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:27:47 +0000 (10:27 +0000)]
graph: Make backgrounds transparent
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:27:38 +0000 (10:27 +0000)]
colors: Fix black and white
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:24:42 +0000 (10:24 +0000)]
colors: Remove the prefix
I suppose there will be no collisions in the namespace.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:22:51 +0000 (10:22 +0000)]
loadavg: Add a simple graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:21:51 +0000 (10:21 +0000)]
graph: Add macros to draw some elements
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:21:13 +0000 (10:21 +0000)]
colors: Add macro to make colors transparent
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:21:00 +0000 (10:21 +0000)]
colors: Add orange
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 10:04:42 +0000 (10:04 +0000)]
graph: Draw all graphs from back to front
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 09:48:13 +0000 (09:48 +0000)]
client: Use a helper function to send format
No functional changes, just less code.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 3 Oct 2025 09:46:46 +0000 (09:46 +0000)]
graph: Allow specifying the output dimensions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 19:31:54 +0000 (19:31 +0000)]
graph: Fix the text on the watermark
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 19:26:02 +0000 (19:26 +0000)]
graph: Send further rendering options over dbus
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 19:25:18 +0000 (19:25 +0000)]
graph: Allow to specify the output format
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 19:24:20 +0000 (19:24 +0000)]
graphs: Add a struct with further rendering options
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 18:21:42 +0000 (18:21 +0000)]
client: Accept a --format argument
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 18:12:11 +0000 (18:12 +0000)]
client: Add a basic client to fetch the graphs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 17:17:07 +0000 (17:17 +0000)]
module: Define all DEFs and VDEFs for any imported modules
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 17:15:22 +0000 (17:15 +0000)]
graph: Cast arguments to void* to deal with API breakage
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 10:51:23 +0000 (10:51 +0000)]
graph: Log the size of the generated output
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 10:51:06 +0000 (10:51 +0000)]
graph: Write the graph to the output stream
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 10:11:02 +0000 (10:11 +0000)]
graph: Import the default arguments from the Python implementation
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 10:10:27 +0000 (10:10 +0000)]
Make Gettext available
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 10:10:01 +0000 (10:10 +0000)]
Import some colours from the Python implementation
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 10:08:25 +0000 (10:08 +0000)]
graph: Fix calling rrd_graph()
There is pretty much no documenation of librrd and the API has been
changed multiple times. Initially, various arguments have been labeled
optional, but that does not seem to be true for at least the
implementation I am testing against.
So we pass all variables that we function has, and we might as well
include them in the debugging output.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 09:35:57 +0000 (09:35 +0000)]
args: Add function to add multiple pre-formatted arguments at once
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 09:03:23 +0000 (09:03 +0000)]
module: Remove hack where the event loop stores the reference
This was needed when we did not have a proper registry for all modules,
but it seems that that is now the easier way.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 09:00:38 +0000 (09:00 +0000)]
graph: Pass the object to the render function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 08:58:22 +0000 (08:58 +0000)]
graph: Add a helper function to pull in all data sources from a module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 08:57:35 +0000 (08:57 +0000)]
graph: Add a render function to jump into the individual graphs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 08:56:37 +0000 (08:56 +0000)]
modules: Add function to fetch a specific module by its name
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 2 Oct 2025 08:56:14 +0000 (08:56 +0000)]
daemon: Add function to fetch all modules
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 1 Oct 2025 17:06:09 +0000 (17:06 +0000)]
graph: Create the basic to render a graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 1 Oct 2025 16:48:57 +0000 (16:48 +0000)]
graphs: Fix typo in variable name
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 30 Sep 2025 16:50:25 +0000 (16:50 +0000)]
daemon: Create a modules registry
Just like we have for graphs now
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 30 Sep 2025 16:37:51 +0000 (16:37 +0000)]
graphs: Take the object name as first (and only) argument
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 30 Sep 2025 16:34:25 +0000 (16:34 +0000)]
graph: Add a Render() method to the bus to render graphs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 30 Sep 2025 15:51:12 +0000 (15:51 +0000)]
graphs: Export them over dbus
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 30 Sep 2025 15:21:25 +0000 (15:21 +0000)]
graphs: Add scaffolding for a loadavg graph
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 30 Sep 2025 08:36:09 +0000 (08:36 +0000)]
jenkins: Don't fail if the static analyzer didn't find any issues
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 18:05:27 +0000 (18:05 +0000)]
daemon: Initialize all graphs when the daemon starts
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 17:53:01 +0000 (17:53 +0000)]
daemon: Initialize all graphs when the daemon starts
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 17:50:02 +0000 (17:50 +0000)]
daemon: Generalize the init/exit functions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 17:40:16 +0000 (17:40 +0000)]
graphs: Add scaffolding for a graph collection
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 17:36:56 +0000 (17:36 +0000)]
main: Log an error if we could not free all resources
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 17:13:19 +0000 (17:13 +0000)]
graphs: Add scaffolding for a new object
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 17:03:47 +0000 (17:03 +0000)]
daemon: Add a basic dbus interfaces for graphs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 16:41:56 +0000 (16:41 +0000)]
queue: Allocate the correct amount of memory
This has been found by the clang static analyzer.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 16:40:12 +0000 (16:40 +0000)]
jenkins: The configure script does not have a --enable-debug switch
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 16:39:23 +0000 (16:39 +0000)]
configure: Make lm-sensors an optional dependency
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 16:34:58 +0000 (16:34 +0000)]
configure: Check for pkg-config before using it
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 16:34:04 +0000 (16:34 +0000)]
configure: Make libatasmart an optional dependency
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 16:28:16 +0000 (16:28 +0000)]
configure: Drop dependency to liboping
This won't be implemented in this daemon any more, but move to the
network daemon which is broadcasting the results over the bus.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 16:26:25 +0000 (16:26 +0000)]
Drop the Python implementation
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 16:21:24 +0000 (16:21 +0000)]
daemon: Export the version over dbus
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 16:01:23 +0000 (16:01 +0000)]
Add a Jenkinsfile
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Sep 2025 15:46:13 +0000 (15:46 +0000)]
po: Update langauge files
This is mainly to make "make distcheck" happy.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 28 Sep 2025 12:04:46 +0000 (12:04 +0000)]
daemon: Connect to dbus
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 28 Sep 2025 12:01:26 +0000 (12:01 +0000)]
module: Explicitely clear any RRD errors
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 28 Sep 2025 12:01:04 +0000 (12:01 +0000)]
Make secure_getenv available
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>