Opened 6 years ago

Closed 6 years ago

#11410 closed defect (not a bug)

Weird downtime counter in globe?

Reported by: asn Owned by: karsten
Priority: Medium Milestone:
Component: Metrics/Globe Version:
Severity: Keywords:
Cc: karsten Actual Points:
Parent ID: Points:
Reviewer: Sponsor:


This is Paul's bridge:

I've been checking that page for the past few days and it always reports '3 hours 50 minutes' of 'Downtime'. Which means that the bridge was up 3 hours and 50 minutes ago.

Is this right? I think I've been getting the same number for the past few days.

Child Tickets

Change History (8)

comment:1 Changed 6 years ago by asn

Hm, it seems to be increasing normally so far.

Maybe this is not a bug after all. I'll keep checking.

comment:2 Changed 6 years ago by karsten

So, there's some problem. Onionoo says that bridge was last seen 2014-04-05 12:37:04, and now it's 2014-04-05 16:48:00, but Globe says downtime is 6 hours 11 minutes. Maybe a problem with timezones?

Also note that Onionoo only runs once every three hours these days due to load problems. Whatever data you get may be 3 hours old.

comment:3 Changed 6 years ago by asn

In a similar note,
when you search for a dead bridge, the search results page shows the 'Uptime' (11 days in Paul's case), but if you visit the bridge page it shows the 'Downtime' (4 days).

Maybe it would be better if those two indicators were consistent. Maybe in the case of a dead bridge, instead of reporting the previous uptime you could display a negative cross (the opposite of the tick sign in the 'Flags' column).

comment:4 in reply to:  3 Changed 6 years ago by karsten

Replying to asn:

In a similar note,

One issue per ticket, Sir! --> #11411.

comment:5 Changed 6 years ago by asn

Now it says '2 hours 6 minutes'. I wonder if Paul's bridge is so unstable.

comment:6 Changed 6 years ago by karsten

Component: GlobeOnionoo

Oh! I found the problem.

  • This bridge didn't have the Running flag in any of the bridge network statuses from the past 3 days (and maybe beyond). It did have the Valid flag though, so it was listed in the status.
  • Onionoo sees the bridge and updates its last_seen field accordingly.
  • Globe sees it's not running and was last seen whenever Onionoo last updated that field, so it computes the bridge's "downtime". While this approach works fine for relays which are only contained in a status if they're running, it doesn't work for bridges which are also contained if they're not running.

So, three problems:

  • Why does Tonga think that a bridge that is hard-coded in the bundles is not running?
  • Onionoo should provide information when a bridge was last seen as running in addition to when the bridge was last seen in a status. Or maybe it should only update last_seen when a bridge was actually running. I don't know yet what's the right fix for this.
  • Depending on the Onionoo fix, Globe should use that new field to compute downtime, or do nothing because the last_seen field will have the meaning that Globe already expects.

I'm stealing this ticket for the Onionoo component and will give it back if/when there's something to fix in Globe.

comment:7 Changed 6 years ago by karsten

Owner: changed from rndm to karsten
Status: newassigned


comment:8 Changed 6 years ago by karsten

Component: OnionooGlobe
Resolution: not a bug
Status: assignedclosed

I'm going to fix this in Onionoo, but I created a fresh ticket which doesn't contain all sorts of speculations what could be wrong with Globe. See #11430. Once that ticket is resolved, this Globe issue will magically go away. Closing.

Note: See TracTickets for help on using tickets.