Closed roderik-k closed 6 years ago
thanks, will try to fix it ASAP
thx for your support, π
The same error: `{ "data":[
{
"{#DISKSN}":"Y21WK8JC",
"{#DISKMODEL}":"Maxtor 6Y080M0",
"{#DISKNAME}":"/dev/sda",
"{#DISKCMD}":"/dev/sda -data",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
},
{
"{#DISKSN}":"",
"{#DISKMODEL}":"",
"{#DISKNAME}":"/dev/sdb",
"{#DISKCMD}":"/dev/sdb -dscsi",
"{#SMART_ENABLED}":"0",
"{#DISKTYPE}":"2"
},
{
"{#DISKSN}":"9QM7W1LD",
"{#DISKMODEL}":"ST3500320AS",
"{#DISKNAME}":"/dev/csmi0,1",
"{#DISKCMD}":"/dev/csmi0,1 -data",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
},
{
"{#DISKSN}":"Z2AMFRRB",
"{#DISKMODEL}":"ST500DM002-1BD142",
"{#DISKNAME}":"/dev/csmi0,2",
"{#DISKCMD}":"/dev/csmi0,2 -data",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
},
{
"{#DISKSN}":"Z3T83S3M",
"{#DISKMODEL}":"ST500DM002-1BD142",
"{#DISKNAME}":"/dev/csmi0,3",
"{#DISKCMD}":"/dev/csmi0,3 -data",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
},
] }` It's old desktop (controller ICH9R) with intel matrix storage driver
the same and
C:\Windows\system32>powershell -NoProfile -ExecutionPolicy Bypass -File "C:\zabbix_agent\scripts\smartctl-disks-discovery.ps1"
{
"data"[
Method invocation failed because [System.Object[]] does not contain a method named 'trim'.
At C:\zabbix_agent\scripts\smartctl-disks-discovery.ps1:45 char:5
+ $disk_sn=$sn.trim()
+ ~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : MethodNotFound
{
"{#DISKSN}":"JPW9K0N217HKWE",
"{#DISKMODEL}":"Hitachi HUA722010CLA630",
"{#DISKNAME}":"/dev/csmi2,0",
"{#DISKCMD}":"/dev/csmi2,0 -data",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
},
{
"{#DISKSN}":"JPW9J0N216W50C",
"{#DISKMODEL}":"Hitachi HUA722010CLA630",
"{#DISKNAME}":"/dev/csmi2,1",
"{#DISKCMD}":"/dev/csmi2,1 -data",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
},
]
}
mykolq what powershell and Windowns versions do you have?
5.1.14393.2248
Cannot reproduce. Please provide output of smartctl --scan-open
sure.
C:\zabbix_agent\smartmontools\bin>smartctl --scan-open
/dev/sda -d scsi # /dev/sda, SCSI device
/dev/csmi2,0 -d ata # /dev/csmi2,0, ATA device
/dev/csmi2,1 -d ata # /dev/csmi2,1, ATA device
Ok, found the problem please try the latest commit
thanks a lot =) it works fine
thanks it works very nice, valid json format
I have this one host (dell) where something not working correctly: C:\Program Files\smartmontools\bin>smartctl.exe --scan-open /dev/sda -d ata # /dev/sda, ATA device /dev/csmi0,0 -d ata # /dev/csmi0,0, ATA device
valid json - powershell cmd on dell host local: PS C:\zabbix_agent> .\smartctl-disks-discovery.ps1 { "data":[
{
"{#DISKSN}":"171616DFD067",
"{#DISKMODEL}":"Micron 1100 SATA 256GB",
"{#DISKNAME}":"/dev/sda",
"{#DISKCMD}":"/dev/sda -data",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"2"
}
but in zabbix system is not valid json ("comma" error): [root@monitoring ~]# zabbix_get -s 192.168.1.221 -p 10050 -k uHDD.discovery { "data":[
{
"{#DISKSN}":"171616DFD067",
"{#DISKMODEL}":"Micron 1100 SATA 256GB",
"{#DISKNAME}":"/dev/sda",
"{#DISKCMD}":"/dev/sda -data",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"1"
},
] }
Sorry! Was trying to fix that in a rush. Now it should work in your case as well.
Still not working... `ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
ΠΠΌΡ "ConvertTo-Json" Π½Π΅ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π½ΠΎ ΠΊΠ°ΠΊ ΠΈΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Π»Π΅ΡΠ°, ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΉΠ»Π° ΡΠΊΡΠΈΠΏΡΠ° ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΠΏΡΡΠΈ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΠ΅ ΠΏΠΎΠΏΡΡΠΊΡ. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:104 Π·Π½Π°ΠΊ:46
What windows and powershell version do you have?
9 ΠΈΡΠ»Ρ 2018 Π³., Π² 12:41, SimplyKot notifications@github.com Π½Π°ΠΏΠΈΡΠ°Π»(Π°):
Still not working... `ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
$disks += [ordered] <<<< @{ CategoryInfo : InvalidOperation: (ordered:String) [], RuntimeException FullyQualifiedErrorId : TypeNotFound ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
$disks += [ordered] <<<< @{ CategoryInfo : InvalidOperation: (ordered:String) [], RuntimeException FullyQualifiedErrorId : TypeNotFound ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
$disks += [ordered] <<<< @{ CategoryInfo : InvalidOperation: (ordered:String) [], RuntimeException FullyQualifiedErrorId : TypeNotFound ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
$disks += [ordered] <<<< @{ CategoryInfo : InvalidOperation: (ordered:String) [], RuntimeException FullyQualifiedErrorId : TypeNotFound ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
$disks += [ordered] <<<< @{ CategoryInfo : InvalidOperation: (ordered:String) [], RuntimeException FullyQualifiedErrorId : TypeNotFound ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΠΏ [ordered]: ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΡΠΎΡ ΡΠΈΠΏ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π°. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:93 Π·Π½Π°ΠΊ:24
$disks += [ordered] <<<< @{ CategoryInfo : InvalidOperation: (ordered:String) [], RuntimeException FullyQualifiedErrorId : TypeNotFound ΠΠΌΡ "ConvertTo-Json" Π½Π΅ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π½ΠΎ ΠΊΠ°ΠΊ ΠΈΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Π»Π΅ΡΠ°, ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΉΠ»Π° ΡΠΊΡΠΈΠΏΡΠ° ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΠΏΡΡΠΈ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΠ΅ ΠΏΠΎΠΏΡΡΠΊΡ. C:\zabbix\conf\scripts\smartctl-disks-discovery.ps1:104 Π·Π½Π°ΠΊ:46
$json_disks = @{data= $disks}| ConvertTo-Json <<<< -Depth 2 CategoryInfo : ObjectNotFound: (ConvertTo-Json:String) [], CommandNotFoundException FullyQualifiedErrorId : CommandNotFoundException` β You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
Ok, no fancy PS modules dependencies now, just fixed comma thing :)
Now working great! Thank you!
Finally ! π
I am experiencing this issue on a Debian Stretch (PVE) system running zabbix_agent 4.0.7
root@proxsat:/etc/zabbix/scripts# ./smartctl-disks-discovery.pl
{
"data":[
{
"{#DISKMODEL}":"WDC WD1003FZEX-00K3CA0",
"{#DISKSN}":"WD-WCC6Y0NYF3E7",
"{#DISKNAME}":"/dev/sda",
"{#DISKCMD}":"/dev/sda -d sat",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
},
{
"{#DISKMODEL}":"WDC WD1003FZEX-00K3CA0",
"{#DISKSN}":"WD-WCC6Y4KD46L2",
"{#DISKNAME}":"/dev/sdb",
"{#DISKCMD}":"/dev/sdb -d sat",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
},
{
"{#DISKMODEL}":"Samsung SSD 860 PRO 1TB",
"{#DISKSN}":"S42NNF0K501976K",
"{#DISKNAME}":"/dev/sdc",
"{#DISKCMD}":"/dev/sdc -d sat",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"1"
},
{
"{#DISKMODEL}":"Samsung SSD 860 PRO 1TB",
"{#DISKSN}":"S42NNF0K501910F",
"{#DISKNAME}":"/dev/sdd",
"{#DISKCMD}":"/dev/sdd -d sat",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"1"
}
]
}
Also on a FreeNAS system with zabbix_agent 3.2. So far it's only working on the Zabbix Server (Ubuntu 18.04) itself.
Update: On another system (Ubuntu 18.04) with zabbix_agent 4.0.7 it works without a hitch.
[root@hive /etc/zabbix/scripts]# ./smartctl-disks-discovery.pl
{
"data":[
{
"{#DISKMODEL}":"WDC WD30EZRX-00AZ6B0",
"{#DISKSN}":"WD-WCC070364464",
"{#DISKNAME}":"/dev/sda",
"{#DISKCMD}":"/dev/sda -d sat",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
},
{
"{#DISKMODEL}":"WDC WD30EZRX-00DC0B0",
"{#DISKSN}":"WD-WCC1T0896736",
"{#DISKNAME}":"/dev/sdb",
"{#DISKCMD}":"/dev/sdb -d sat",
"{#SMART_ENABLED}":"1",
"{#DISKTYPE}":"0"
}
]
}
So far the only systems it works on are Ubuntu systems.
I have the same error in Linux
/dev/sda -d scsi # /dev/sda, SCSI device /dev/sdb -d sat # /dev/sdb [SAT], ATA device /dev/bus/0 -d megaraid,0 # /dev/bus/0 [megaraid_disk_00], SCSI device /dev/bus/0 -d megaraid,1 # /dev/bus/0 [megaraid_disk_01], SCSI device /dev/bus/0 -d megaraid,2 # /dev/bus/0 [megaraid_disk_02], SCSI device /dev/bus/0 -d megaraid,3 # /dev/bus/0 [megaraid_disk_03], SCSI device /dev/bus/0 -d megaraid,4 # /dev/bus/0 [megaraid_disk_04], SCSI device /dev/bus/0 -d megaraid,5 # /dev/bus/0 [megaraid_disk_05], SCSI device /dev/bus/0 -d megaraid,6 # /dev/bus/0 [megaraid_disk_06], SCSI device /dev/bus/0 -d megaraid,7 # /dev/bus/0 [megaraid_disk_07], SCSI device
The discovery script ps1 for Win has a small mistake, its "comma" on line 20 in this case is not valid Json format, I dont know to correct the ps1 script to reduce ","
thanks
zabbix_get:
{ "data":[
]