Status der Synology DS per Script auslesen?

Meine DSM Versionsnummer ist 5.2 5565 und das Auslesen der Volums der Platten funktioniert

Gruß
Hardlog

DSM 5.2-5565 Update 2

aber wie gesagt mit PRTG

Ich habe auch DSM 5.2-5565.

@hardlog: Du liest mit den von mir geposteten Daten aus? Also mit:

$HDUnit=snmp(".1.3.6.1.2.1.25.2.3.1.4.38");
$HDTotal=snmp(".1.3.6.1.2.1.25.2.3.1.5.38");
$HDUsed=snmp(".1.3.6.1.2.1.25.2.3.1.6.38");

Oder hast du da andere IDs?

Grüße,
Chris

Nee. Hab mir die selbst rausgesucht. Komme aber momentan nicht an meinem Server. Sobald ich dran komme schaue ich nach.

Gruß
Hardlog

Ich habe /volume1 auf .40
Schau mal mit dem MIB - Browser
Gruß
Hoep

Danke Hoep!!! Das war die richtige Zahl :slight_smile:

$HDUnit=snmp(".1.3.6.1.2.1.25.2.3.1.4.40");
$HDTotal=snmp(".1.3.6.1.2.1.25.2.3.1.5.40");
$HDUsed=snmp(".1.3.6.1.2.1.25.2.3.1.6.40");
$HDFree=round((($HDTotal - $HDUsed) * $HDUnit / 1024 / 1024 / 1024 ));
echo "Totaler Speicher: ".round($HDTotal*$HDUnit/1024/1024/1024). "GB
";
echo "Genutzter Speicher: ".round($HDUsed*$HDUnit/ 1024 / 1024/1024,2). "GB
";
echo "Freier Speicher: ".$HDFree."GB
";

Ausgabe:

Totaler Speicher: 13849GB
Genutzter Speicher: 11457.06GB
Freier Speicher: 2392GB

Danke und Gruß,
Chris

PS: Ich muss mal wieder mein NAS aufräumen :smiley:

Gerne Doch. Erfahrungsgemäß gibt es manchmal nach Updates Änderungen im Mib - der Mib-Browser hilft diese Änderungen aufzuspüren und die richtigen Adressen zu finden.
Gruß
Hoep

Dabei habe ich direkt noch eine Änderung in der Uptime des NAS gefunden:

$upTime=explode(":",(snmp (".1.3.6.1.2.1.25.1.1.0"))); //System UpTime
//var_dump($upTime);
$NasUptime = $upTime[0];
$NasUptime = explode(".", $NasUptime);
$NasUptime = $NasUptime[0];
SetValue($NAS_Uptime_ID, $NasUptime);

Ergibt die Uptime in Tagen in einer Variable :wink:

Erklärung:

string(19) "11.03:16:52.6700000"

11 Tage, 3 Stunden, 16 Minuten, 52 Sekunden, …

Grüße,
Chris

hat ein wenig gebraucht.
Der Fehler war Hier: Statt wie im Original mit \ habe ich nun / verwendet.

Seit dem geht’s so

 $binary = "C:/IP-Symcon/extensions/ssnmpq/ssnmpq.exe";

Gibt’s irgendwo eine Liste, in der alle OID aufgelistet sind? ich habe schon im Internet einiges gesucht. Aber so wirklich funktioniert da nix.

Auch wird der aktuelle Speicher bei mir nicht angezeigt

$HDUnit=snmp(".1.3.6.1.2.1.25.2.3.1.4.40");
$HDTotal=snmp(".1.3.6.1.2.1.25.2.3.1.5.40");
$HDUsed=snmp(".1.3.6.1.2.1.25.2.3.1.6.40");
$HDFree=round((($HDTotal - $HDUsed) * $HDUnit / 1024 / 1024 / 1024 ));
echo "Totaler Speicher: ".round($HDTotal*$HDUnit/1024/1024/1024). "GB
";
echo "Genutzter Speicher: ".round($HDUsed*$HDUnit/ 1024 / 1024/1024,2). "GB
";
echo "Freier Speicher: ".$HDFree."GB
";

andere Infos fuktionieren mal mehr mal weniger. Mal funktionierts, des andere mal wird wieder null angezeigt.

Moin!

Welche OID bei dir „richtig“ sind hängt von einigen Dingen ab.

Du kannst entweder einen „snmpwalk“ machen und dir alles anzeigen lassen was es so an Werten gibt, oder du lädst dir zusätzlich noch die passende MIB ins Programm und siehst dann nicht nur die OID sondern die passenden Beschreibungen/Worte.

Ansonsten einfach mal eine Runde googeln. Die wichtigsten OID findet man immer irgendwo online in einem Blog oder Foren-Post :slight_smile:

Das hier könnte dich vlt. auch noch interessieren:
SNMP Client - Geräte-Status von NAS (QNAP, Synology) oder SNMP Servern allg. auslesen

Hier noch mein Lieblings SNMP-Tool (inkl. Laden von MIBs und SNMPWALK):
ManageEngine - Free SNMP MIB Browser

Grüße,
Chris

Hallo,

habe den Lösungsansatz von hardlock & Peter probiert.
Beide Skripte funktionieren nicht auf der DS215J.
Gibt es schon etwas für diese Disc Station ? Danke

Grüße Alex

Abend!

Dann wirf mal einen Blick in den Beitrag über dir (von mir), da ist alles verlinkt was man braucht. Das ist bei allen aktuellen DSM gleich. Nur die „End-Zahlen“ der OID können ja nach Art der Einrichtung variieren.

Hab erst die Tage meine SNMP-Skripte aufgefrischt (wegen Expansion Box DX513). Einmal mit dem MIB Browser die Synology MIBs geladen, ins Skript rein, ferdisch…

Also hast du entweder nichts gemacht oder was falsch :wink: Was du falsch gemacht haben könntest? Ohne mehr Infos von dir, kann dir das sicher niemand sagen…

-Chris-

Nach langem Probieren waren die OIDs für den HDD-Speicher dann bei Nummer 49 (DS116 mit DSM 6):

$HDUnit = intval(str_replace("INTEGER: ", "", snmp2_get($ip, $com, ".1.3.6.1.2.1.25.2.3.1.4.49")));
//echo $HDUnit."
";
$HDTotal = (int) str_replace("INTEGER: ", "", snmp2_get($ip, $com, "1.3.6.1.2.1.25.2.3.1.5.49")) + 0;
//echo $HDTotal."
";
$HDUsed = (int) str_replace("INTEGER: ", "", snmp2_get($ip, $com, "1.3.6.1.2.1.25.2.3.1.6.49")) + 0;
//echo $HDUsed."
";

$HDFree=($HDTotal - $HDUsed) * $HDUnit / 1024 / 1024 / 1024 ;
echo "Totaler Speicher: ".round($HDTotal*$HDUnit/1024/1024/1024, 2). " GB
";
echo "Genutzter Speicher: ".round($HDUsed*$HDUnit/ 1024 / 1024/1024, 2). " GB
";
echo "Freier Speicher: ".round($HDFree, 2). " GB
";
Totaler Speicher: 912.34 GB
Genutzter Speicher: 107.91 GB
Freier Speicher: 804.43 GB