annotate index.html @ 5:29e10f3a497f

let some deps upgrade
author drewp@bigasterisk.com
date Tue, 29 Mar 2022 22:11:44 -0700
parents e2d855c00e57
children c48b7bbc3a64
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
1 <!DOCTYPE html>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
2 <html>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
3 <head>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
4 <title>collector</title>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
5 <meta charset="utf-8" />
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
6 </head>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
7 <body class="rdfBrowsePage">
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
8 <h1>collector</h1>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
9
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
10 <p><a href="/rdf/browse/?graph=/sse_collector/graph/home">See output for graph/home</a></p>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
11
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
12 <collector-state></collector-state>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
13 <script type="module">
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
14 import { LitElement, html, css, customElement } from "https://cdn.skypack.dev/lit-element";
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
15 export class CollectorState extends LitElement {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
16 static get properties() {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
17 return {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
18 latestState: { type: Object },
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
19 };
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
20 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
21
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
22 constructor() {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
23 super();
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
24 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
25
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
26 firstUpdated() {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
27 this.latestState = { graphClients: {} };
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
28 this.refresh();
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
29 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
30
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
31 delayedRefresh() {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
32 setTimeout(() => {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
33 requestAnimationFrame(() => {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
34 this.refresh();
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
35 });
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
36 }, 5000);
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
37 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
38
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
39 refresh() {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
40 fetch("state")
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
41 .then((response) => {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
42 return response.json();
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
43 })
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
44 .then((newState) => {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
45 this.latestState = newState;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
46 this.delayedRefresh();
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
47 });
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
48 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
49
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
50 static get styles() {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
51 return css`
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
52 :host {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
53 display: inline-block;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
54 border: 2px solid gray;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
55 padding: 5px;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
56 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
57 `;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
58 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
59
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
60 render() {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
61 const sourcesTable = (clients) => {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
62 const clientRow = (client) => {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
63 const d = client.reconnectedPatchSource;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
64 const now = Date.now() / 1000;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
65 const dispSec = (sec) =>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
66 Math.abs(sec) > now - 1
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
67 ? "--"
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
68 : Math.abs(sec) > 3600
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
69 ? `${Math.round(sec / 3600)} hr`
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
70 : Math.abs(sec) > 60
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
71 ? `${Math.round(sec / 60)} min`
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
72 : `${Math.round(sec * 10) / 10} sec`;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
73 return html`
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
74 <tr>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
75 <td><a href="${d.url.replace("/events", "")}">[browse]</a> <a href="${d.url}">${d.url}</a></td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
76 <td>${d.fullGraphReceived}</td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
77 <td>${d.patchesReceived}</td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
78 <td>${dispSec(d.time.open - now)}</td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
79 <td>${dispSec(d.time.fullGraph - d.time.open)}</td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
80 <td>${dispSec(d.time.latestPatch - now)}</td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
81 </tr>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
82 `;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
83 };
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
84
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
85 return html`
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
86 <table>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
87 <thead>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
88 <tr>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
89 <th>patch source</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
90 <th>full graph recv</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
91 <th>patches recv</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
92 <th>time open (rel)</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
93 <th>time fullGraph (after open)</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
94 <th>time latest patch (rel)</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
95 </tr>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
96 </thead>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
97 <tbody>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
98 ${clients.map(clientRow)}
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
99 </tbody>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
100 </table>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
101 `;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
102 };
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
103
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
104 const handlersTable = (handlers) => {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
105 const handlerRow = (d) => {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
106 return html`
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
107 <tr>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
108 <td>${d.created}</td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
109 <td>${d.ageHours}</td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
110 <td><a href="/rdf/browse/?graph=/sse_collector/graph/${d.streamId}">${d.streamId}</a></td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
111 <td>${d.foafAgent}</td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
112 <td>${d.userAgent}</td>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
113 </tr>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
114 `;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
115 };
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
116
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
117 return html`
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
118 <table>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
119 <thead>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
120 <tr>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
121 <th>created</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
122 <th>age hours</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
123 <th>stream</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
124 <th>foaf agent</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
125 <th>user agent</th>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
126 </tr>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
127 </thead>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
128 <tbody>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
129 ${handlers.map(handlerRow)}
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
130 </tbody>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
131 </table>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
132 `;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
133 };
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
134
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
135 if (!this.latestState) {
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
136 return "loading...";
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
137 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
138 const d = this.latestState.graphClients;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
139 return html` <div>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
140 <p>Graph: ${d.statements ? d.statements.len : 0} statements</p>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
141
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
142 <p>Sources: ${sourcesTable(d.clients || [])}</p>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
143
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
144 <p>Listening clients: ${handlersTable(d.sseHandlers || [])}</p>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
145 </div>`;
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
146 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
147 }
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
148 customElements.define("collector-state", CollectorState);
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
149 </script>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
150 </body>
e2d855c00e57 initial move from homeauto/ repo
drewp@bigasterisk.com
parents:
diff changeset
151 </html>