Right, I knew that.  What I want to do is the metaphorical equivalent of

                stop observium

                cat old-port-rrd new-port-rrd > temp

                mv temp old-port-rrd

                rm new-port-rrd

                # now go fix the port names and numbers on the router

                restart observium

 

I know RRD files aren’t ASCII to be manipulated this way, so is there a way to merge two RRD files that overlap in time, taking the data from file A up to timestamp X, then the data from file B up to timestamp Y, then switch back to file A?

If this was SQL, it would be something like:

 

  SELECT * FROM old_port WHERE timestamp < x

 UNION

  SELECT * FROM new_port WHERE timestamp BETWEEN x AND y

 UNION

 SELECT * FROM old_port WHERE timestamp > y;

 

…or am I just, well, screwed?

 

Adam Thompson
Consultant, Infrastructure Services
merlin-email-logo
100 - 135 Innovation Drive
Winnipeg, MB, R3T 6A8
(204) 977-6824 or 1-800-430-6404 (MB only)
athompson@merlin.mb.ca
www.merlin.mb.ca

 

From: observium <observium-bounces@observium.org> On Behalf Of Adam Armstrong via observium
Sent: Thursday, February 21, 2019 1:28 PM
To: Adam Thompson via observium <observium@observium.org>
Cc: Adam Armstrong <adama@memetic.org>
Subject: Re: [Observium] Renamed interface - how to keep unified history?

 

Port statistics are just held in a .rrd file on the server. You can copy one file over another file. This is usually not a good thing to do, because you're copying statistics for errors and other things too, but if it's legitimately the same interface, this isn't a problem.

 

You can see what the files are by clicking on a graph and seeing what RRDs are used (or showing the RRD command for graphs where the RRDs aren't shown in the UI)

 

adam.

On 2019-02-21 15:07:58, Adam Thompson via observium <observium@observium.org> wrote:

I made a change on one of our routers that caused a new ifIndex & name to be assigned to a customer circuit (interface).

Observium is correctly reporting the data on the old virtual i/f (which still technically exists) and – naturally – separately on the new virtual i/f.

Is there any way to (retroactively???) tell Observium that these are really the same interface, and to display only one graph for the two ifIndexes?

 

Or, if I correct the situation so the old ifIndex & name is being showing traffic again, is there any way to move, or inject, the collected data on the ‘new’ port into the ‘old’ port’s RRDs?  (i.e. avoid a multi-day gap in a multi-year dataset)

 

We are reasonably up-to-date, running 19.2.9712 – not sure what other info will be helpful here.

 

Thanks,

-Adam

 

Adam Thompson
Consultant, Infrastructure Services
merlin-email-logo
100 - 135 Innovation Drive
Winnipeg, MB, R3T 6A8
(204) 977-6824 or 1-800-430-6404 (MB only)
athompson@merlin.mb.ca
www.merlin.mb.ca