Installationszeit von Produkten im Depot ermitteln?

The place for development of / with / for opsi.
Post your API questions here!
Benutzeravatar
jub
Beiträge: 38
Registriert: 25 Nov 2010, 12:40

Installationszeit von Produkten im Depot ermitteln?

Beitragvon jub » 12 Jul 2018, 14:39

Hallo allerseits!

Für unser internes Reporting habe ich mir ein kleines Python-Tool geschrieben, das über den BackendManager diverse Informationen einsammelt und aufbereitet. Neben ein wenig allgemeinen statistischen Daten sollen hier vor allem aber Infos zu Fehlern auf Clients, ausstehenden Vorgängen, veralteter Software auf den Clients etc. geliefert werden.
Darüber hinaus möchte ich wissen, welche Pakete in den letzten 24h im Depot installiert wurden. Leider habe ich im Backend keine Methode gefunden, die mir diese Info liefert; erwartet hätte ich das z.B. bei getProducts_hash. (Wobei ich damit nicht sagen will, dass es sie nicht gibt.)

Eine Möglichkeit besteht nun darin, hierfür das Datum der Verzeichnisse in /var/lib/opsi/ oder der Files in /var/lib/opsi/config/products/ heranzuziehen. Das ist allerdings weder zuverlässig noch sonderlich elegant.

Gibt es einen besseren Weg zu den gesuchten Informationen zu kommen?


Viele Grüsse,
Jens

Benutzeravatar
n.wenselowski
uib-Team
Beiträge: 3195
Registriert: 04 Apr 2013, 12:15

Re: Installationszeit von Produkten im Depot ermitteln?

Beitragvon n.wenselowski » 24 Jul 2018, 10:16

Hi Jens,

zum Installationszeitpunkt des Produkts auf dem Depot haben wir keine genauen Infos.

jub hat geschrieben:Darüber hinaus möchte ich wissen, welche Pakete in den letzten 24h im Depot installiert wurden. Leider habe ich im Backend keine Methode gefunden, die mir diese Info liefert; erwartet hätte ich das z.B. bei getProducts_hash. (Wobei ich damit nicht sagen will, dass es sie nicht gibt.)

An der Stelle vermutlich besser: productOnDepot_getObjects

jub hat geschrieben:Eine Möglichkeit besteht nun darin, hierfür das Datum der Verzeichnisse in /var/lib/opsi/ oder der Files in /var/lib/opsi/config/products/ heranzuziehen. Das ist allerdings weder zuverlässig noch sonderlich elegant.

Ich würde nicht empfehlen die API zu verlassen, weil du dich damit auf Backend-interne Daten verlässt, die sich jederzeit ändern könnten. Die API halten wir hingegen stabil und Brüche gibt es nur mit Ankündigung.

jub hat geschrieben:Gibt es einen besseren Weg zu den gesuchten Informationen zu kommen?

Mein Ansatz wäre einfach sich den Tagesstand zu merken und den dann mit dem nächsten Tag zu vergleichen.


Gruß

Niko

PS: Ich habs mal ins Dev-Forum verschoben, da passt das besser hin.

Code: Alles auswählen

import OPSI

Benutzeravatar
jub
Beiträge: 38
Registriert: 25 Nov 2010, 12:40

Re: Installationszeit von Produkten im Depot ermitteln?

Beitragvon jub » 30 Jul 2018, 18:27

Hallo Niko,

danke fuer das Feedback!

Den Gedanken, den Tagesstand separat zu hinterlegen, hatte ich auch schon kurz gehabt. Da das Reportingtool selbst dann nicht ganz "zustandslos" ist, hab ich das aber erst mal wieder verworfen und gehofft, ich hab nur etwas innerhalb der API uebersehen.
Auf jedem Fall ist das natuerlich besser als die Informationen vom FIlesystem zu beziehen. Das hatte ich ohnehin nicht ernsthaft in Betracht bezogen.

Die API halten wir hingegen stabil und Brüche gibt es nur mit Ankündigung.


Das ist verstaendlich. Vielleicht ist das als Feature-Request ja auch fuer andere interessant und somit eventuell fuer eine spaetere API-Version auf der Agenda.

Ich werd vorerst jedenfalls erst mal die Variante mit dem Tagesstatus implementieren.

Danke & viele Gruesse,
Jens

Benutzeravatar
n.wenselowski
uib-Team
Beiträge: 3195
Registriert: 04 Apr 2013, 12:15

Re: Installationszeit von Produkten im Depot ermitteln?

Beitragvon n.wenselowski » 07 Aug 2018, 12:32

Hi Jens,

jub hat geschrieben:
Die API halten wir hingegen stabil und Brüche gibt es nur mit Ankündigung.


Das ist verstaendlich. Vielleicht ist das als Feature-Request ja auch fuer andere interessant und somit eventuell fuer eine spaetere API-Version auf der Agenda.


ich habe das mal als Anregung in unsere internen Tickets aufgenommen.
Hier noch mal der generelle Hinweis, dass sich Änderungen über den Support um ein vielfaches beschleunigen lassen.


Gruß

Niko

Code: Alles auswählen

import OPSI