@@ -103,6 +103,11 @@ func (p *ProbeCollector) Probe(ctx context.Context, target string, hc *http.Clie
103
103
// TODO: Make parallel
104
104
success := true
105
105
for _ , aProbe := range []probeDetailedFunc {
106
+ // Always keep probeSystemTime on top of the list to have the probe processed first.
107
+ // Therefore time returned is more accurate when integrated in Prometheus because
108
+ // timestamp for the metrics probe, in Prometheus, is obtained from the query time, not the reply time.
109
+ // This is especially important when running all the probes takes many seconds.
110
+ {"System/Time/Clock" , probeSystemTime },
106
111
{"BGP/NeighborPaths/IPv4" , probeBGPNeighborPathsIPv4 },
107
112
{"BGP/NeighborPaths/IPv6" , probeBGPNeighborPathsIPv6 },
108
113
{"BGP/Neighbors/IPv4" , probeBGPNeighborsIPv4 },
@@ -119,7 +124,6 @@ func (p *ProbeCollector) Probe(ctx context.Context, target string, hc *http.Clie
119
124
{"System/LinkMonitor" , probeSystemLinkMonitor },
120
125
{"System/Resource/Usage" , probeSystemResourceUsage },
121
126
{"System/Status" , probeSystemStatus },
122
- {"System/Time/Clock" , probeSystemTime },
123
127
{"System/VDOMResources" , probeSystemVDOMResources },
124
128
{"User/Fsso" , probeUserFsso },
125
129
{"VPN/IPSec" , probeVPNIPSec },
0 commit comments