Browse Source

prober: make status page more clear

Updates tailscale/corp#20583

Signed-off-by: Anton Tolchanov <[email protected]>
Anton Tolchanov 1 year ago
parent
commit
46db698333
3 changed files with 8 additions and 7 deletions
  1. 2 1
      prober/prober.go
  2. 1 1
      prober/status.go
  3. 5 5
      prober/status.html

+ 2 - 1
prober/prober.go

@@ -496,7 +496,8 @@ func (p *Prober) RunHandler(w http.ResponseWriter, r *http.Request) error {
 		return nil
 	}
 
-	stats := fmt.Sprintf("Previous runs: success rate %d%%, median latency %v",
+	stats := fmt.Sprintf("Last %d probes: success rate %d%%, median latency %v\n",
+		len(prevInfo.RecentResults),
 		int(prevInfo.RecentSuccessRatio()*100), prevInfo.RecentMedianLatency())
 	if err != nil {
 		return tsweb.Error(respStatus, fmt.Sprintf("Probe failed: %s\n%s", err.Error(), stats), err)

+ 1 - 1
prober/status.go

@@ -86,7 +86,7 @@ func (p *Prober) StatusHandler(opts ...statusHandlerOpt) tsweb.ReturnHandlerFunc
 			}
 			s := probeStatus{ProbeInfo: info}
 			if !info.End.IsZero() {
-				s.TimeSinceLast = time.Since(info.End)
+				s.TimeSinceLast = time.Since(info.End).Truncate(time.Second)
 			}
 			for textTpl, urlTpl := range params.probeLinks {
 				text, err := renderTemplate(textTpl, info)

+ 5 - 5
prober/status.html

@@ -71,12 +71,12 @@
     <table class="sortable">
         <thead><tr>
             <th>Name</th>
-            <th>Class & Labels</th>
+            <th>Probe Class & Labels</th>
             <th>Interval</th>
-            <th>Result</th>
+            <th>Last Attempt</th>
             <th>Success</th>
             <th>Latency</th>
-            <th>Error</th>
+            <th>Last Error</th>
         </tr></thead>
         <tbody>
         {{range $name, $probeInfo := .Probes}}
@@ -100,8 +100,8 @@
             <td>{{$probeInfo.Interval}}</td>
             <td data-sort="{{$probeInfo.TimeSinceLast.Milliseconds}}">
                 {{if $probeInfo.TimeSinceLast}}
-                    {{$probeInfo.TimeSinceLast.String}}<br/>
-                    <span class="small">{{$probeInfo.End}}</span>
+                    {{$probeInfo.TimeSinceLast.String}} ago<br/>
+                    <span class="small">{{$probeInfo.End.Format "2006-01-02T15:04:05Z07:00"}}</span>
                 {{else}}
                     Never
                 {{end}}