Archivkontrolle

Hi!

Dann hab ich dich doch richtig verstanden?! Du willst alle Variablen löschen, die dass Logging in der Variable ausgeschaltet haben, aber im Archiv aufgelistet werden, weil das Logging irgendwann mal eingeschaltet war?!

Dann müsste man ein Skript schreiben, welches alle Variablen im Archiv in ein Array schreibt. Dann alle Variablen im IPS durchlaufen, jeweils prüfen ob das Logging ausgeschaltet ist, wenn das Logging ausgeschaltet ist, dann prüfen ob die Variable im Archiv-Array auftaucht. Dann gegebenenfalls noch erweitern um > hat dieser Archiveintrag geloggte Werte. Am Ende löschen.

Grüße,
Chris

Hallo Chris,

werde mich da mal an einem Script versuchen. Ich hatte allerdings angenommen, dass die Löschfunktion im Modul Archiv das auch kann - tut es aber zur Zeit (noch) nicht.

Grüße, Gerhard

Hallo Gerhard!

Nein, im Archiv kann man nur komplette Einträge löschen (mit allen Werten), oder Werte in einer bestimmten Zeitspanne.

Starte mal das Skript bei dir, dann sieht du, ob überhaupt Variablen im Archiv sind, bei denen das Logging ausgeschaltet ist. Keine Sorge, ist nur eine AUSGABE, da wird nichts gelöscht!

<?
$ArchiveHandlerID = IPS_GetInstanceListByModuleID('{43192F0B-135B-4CE7-A0A7-1475603F3060}')[0];
$Logged_Vars_AR = AC_GetAggregationVariables($ArchiveHandlerID,false);
foreach ($Logged_Vars_AR as $Logged_Var) {
	$Logged_VarsID_AR[] = $Logged_Var['VariableID'];
}

$IPS_VarID_AR = IPS_GetVariableList();
foreach ($IPS_VarID_AR as $IPS_VarID) {
	$LogStatus = AC_GetLoggingStatus($ArchiveHandlerID, $IPS_VarID);
	if ($LogStatus === false) {  // 0 = Logging AUS, 1 = Logging AN
		if (in_array($IPS_VarID, $Logged_VarsID_AR)) {
		   $LoggingAUS_ImArchiv_AR[] = $IPS_VarID;
		}
	}
}

if (isset($LoggingAUS_ImArchiv_AR)) {
	$count = count($LoggingAUS_ImArchiv_AR);
	echo "Es wurden $count Variablen im Archiv gefunden, bei denen das Logging ausgeschaltet ist!".PHP_EOL;
	print_r($LoggingAUS_ImArchiv_AR);
}
else {
	echo "Es wurden keine Variablen im Archiv gefunden, bei denen das Logging ausgeschaltet ist!";
}
?>

…bei mir war es bei keiner Variable der Fall…

Grüße,
Chris

Hallo Chris,

so schnell hätt ich das Script ja ncht geschrieben…
Bei mir sind 20 Variablen nicht geloggt (grau im Archiv-Modul).

Grüße, Gerhard

Hallo zusammen

Wie läuft das denn beim release candidat? Können da die „alten“ geloggten Daten übernommen werden?

Du meinst beim Umzug von IPS 3.4 auf IPS 4? Ja, die Daten werden in bei der Installation in das neue Datenbankformat konvertiert. Wird auch in den entsprechenden IPS4-Threads erwähnt.

Grüße,
Chris

das heisst ich muss auf meinem Windows-Server zuerst einmal auf V4 gehen, damit ich auf mein ubuntu system migrieren kann?

Konkret: Windows 3.4 auf Unix 4.0 geht nicht?

gruss Andi