Installationszeit von Produkten im Depot ermitteln?

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

Installationszeit von Produkten im Depot ermitteln?

Beitrag von jub »

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
Ex-uib-Team
Beiträge: 3194
Registriert: 04 Apr 2013, 12:15

Re: Installationszeit von Produkten im Depot ermitteln?

Beitrag von n.wenselowski »

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: 58
Registriert: 25 Nov 2010, 12:40

Re: Installationszeit von Produkten im Depot ermitteln?

Beitrag von jub »

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
Ex-uib-Team
Beiträge: 3194
Registriert: 04 Apr 2013, 12:15

Re: Installationszeit von Produkten im Depot ermitteln?

Beitrag von n.wenselowski »

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
Antworten