Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spalte "Anzahl Einträge" auch in der Datenpunktliste #419

Open
martinrieder opened this issue Jun 9, 2024 · 5 comments
Open

Spalte "Anzahl Einträge" auch in der Datenpunktliste #419

martinrieder opened this issue Jun 9, 2024 · 5 comments
Labels
Verbesserung Verbesserungswunsch Verwaltung Verwaltung der Zeitreihen Zuarbeit wünschenswert Zeitmangel macht die Zuarbeit von anderen notwendig

Comments

@martinrieder
Copy link

martinrieder commented Jun 9, 2024

In der Datenpunktkonfiguration wird eine Spalte für die Anzahl der Einträge gezeigt, nach der man auch sortieren kann. Wenn man aber die Werkzeuge aufrufen möchte, um deren Historie zu löschen, dann muss man erst zur Datenpunktliste wechseln und diese auswählen. Dieses Vorgehen ist recht umständlich und man muss sich dabei merken, welche Datenpunkte man bearbeiten möchte. Es wäre daher sehr von Vorteil, wenn diese Spalte auch in der Datenpunktliste vorhanden wäre.

Zusätzlich wäre die Zusammenfassung am Ende der Tabelle wünschenswert:
Anzahl Datenpunkt: <X>, Gesamtanzahl aller Einträge: <Y>, Anzahl aller Einträge in den letzten 24 Stunden: <Z>

(Hier versteckt sich übrigens ein Rechtschreibfehler! Wer ihn findet, der darf ihn behalten... 😊)

@mdzio mdzio added Verbesserung Verbesserungswunsch Verwaltung Verwaltung der Zeitreihen labels Jun 9, 2024
@mdzio
Copy link
Owner

mdzio commented Jun 9, 2024

Den Rechtschreibfehler habe ich korrigiert.

Das Abfragen der Anzahl der Einträge je Datenpunkt dauert bei einer Installation als Add-On auf der langsamen CCU sehr lange. Daher müsste es per Konfigurationseintrag aktivierbar sein, wenn die Funktionalität gewollt ist.

Ich habe aber selber gerade zu wenig Zeit dies umzusetzen.

@mdzio mdzio added the Zuarbeit wünschenswert Zeitmangel macht die Zuarbeit von anderen notwendig label Jun 9, 2024
@martinrieder
Copy link
Author

martinrieder commented Jun 9, 2024

Ja, ich habe es auf der CCU laufen und das dauert für beides Datenpunktliste und - Konfiguration ungefähr gleich lang zu laden. Deshalb erwarte ich keine große Verschlechterung in der Performance.
Bei mir brauchen 670 Datenpunkte ungefähr 20 Sekunden zum Laden. Das ist nervig, aber noch akzeptabel. Ich schaue mal rein, ob ich einen PR erstellen kann. Dann würde man ja sehen, ob es einen Einfluss auf die Ladezeit hat.

mdzio added a commit that referenced this issue Jun 12, 2024
@martinrieder
Copy link
Author

martinrieder commented Jun 15, 2024

Ich habe mir den Quelltext angeschaut und ein erstes Verständnis entwickelt. Dabei möchte ich mal kurz ein Lob für die gut strukturierte und übersichtliche Programmierung aussprechen!

Eine Frage habe ich trotzdem, um die Auswirkungen der Änderungen besser zu bewerten: Kann ich irgendwie die Dauer der Datenbankabfragen sehen? Liefert H2 diese vielleicht gleich mit der SQL-Antwort?

Hintergrund: Ich vermute nämlich, dass es von Vorteil wäre, wenn nicht pro Datenreihe gleich zweimal die Anzahl abgefragt würde. Das lässt sich bestimmt zusammen in eine Abfrage packen.

@mdzio
Copy link
Owner

mdzio commented Jun 16, 2024

Danke für das Lob.

PageRenderer.groovy gibt die Ladezeit jeder Seite im Log an:

long st=System.currentTimeMillis()
...
log.finest "Page build time: ${System.currentTimeMillis()-st} ms"

Sicherlich könnte das auch auf einzelne SQL-Abfragen angewendet werden.

Für die Ermittlung der Anzahl der Einträge muss auf die Zeitreihentabelle des Datenpunktes zugegriffen werden. Dies ist bei der normalen Auflistung nicht nötig.

Ich sehe gerade ein ähnliches Feature in der index.gy das bereits umgesetzt worden ist: Die Anzeige des letzten Zeitstempels.
Das erfolgt mit folgenden Zeilen:

						if (webServer.config.showLastValue) {
							def last=database.getLast(dp)
							td class:'hidden-xs hidden-sm', utils.format(last?.timestamp)
							td class:'hidden-xs hidden-sm text-right', utils.format(last?.value)
						}

Dafür gibt es die Konfigurationsoption: webServer.showLastValue. Das könnte auch für die Anzahl der Einträge realisiert werden.

@martinrieder
Copy link
Author

martinrieder commented Jun 19, 2024

Eine Frage habe ich trotzdem, um die Auswirkungen der Änderungen besser zu bewerten: Kann ich irgendwie die Dauer der Datenbankabfragen sehen? Liefert H2 diese vielleicht gleich mit der SQL-Antwort?

Antworten gefunden :

Danke aber für die Antwort mit den Hinweisen zu PageRenderer.groovy und webServer.showLastValue!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Verbesserung Verbesserungswunsch Verwaltung Verwaltung der Zeitreihen Zuarbeit wünschenswert Zeitmangel macht die Zuarbeit von anderen notwendig
Projects
None yet
Development

No branches or pull requests

2 participants