dusharu / ZBX_Disk_Stat

Send statistic from /proc/diskstats to Zabbix
GNU General Public License v3.0
7 stars 5 forks source link

Zeile 172: column: Kommando nicht gefunden. / Line 172: column: Command not found. #8

Closed duven87 closed 10 months ago

duven87 commented 10 months ago

Hi again, in some servers the script doesnt work correctly.

/etc/zabbix/scripts/disk_stat.sh: Zeile 172: column: Kommando nicht gefunden.
{
"ZBX_Disk_Stat": [ {
    "name": "dm-1",
    "read_complete": "345539311",
    "read_sector": "10371328666",
    "read_time": "875081872",
    "write_complete": "4474548755",
    "write_sector": "126479330656",
    "write_time": "3931547184",
    "io_queue": "40"
    } ]
}

        "read_complete": "368558914",
       "r
 5456:20231108:192632.198 error reason for "ldap02.server.net:custom.blkdev.read_operation_ps[sda]" changed: Prep
rocessing failed for: /etc/zabbix/scripts/disk_stat.sh: Zeile 172: column: Kommando nicht gefunden..{."ZBX_Disk_Stat": ...
1. Failed: cannot extract value from json by path "$['ZBX_Disk_Stat'][0]['read_complete']": cannot parse as a valid JSON objec
t: invalid object format, expected opening character '{' or '[' at: '/etc/zabbix/scripts/disk_stat.sh: Zeile 172: column: Komm
ando nicht gefunden.
{
"ZBX_Disk_Stat": [ {
       "name": "sda",
       "read_complete": "368558914",
       "r
 5456:20231108:192632.198 error reason for "ldap02.server.net:custom.blkdev.read_operation_pm[sda]" changed: Prep
rocessing failed for: /etc/zabbix/scripts/disk_stat.sh: Zeile 172: column: Kommando nicht gefunden..{."ZBX_Disk_Stat": ...
1. Failed: cannot extract value from json by path "$['ZBX_Disk_Stat'][0]['read_complete']": cannot parse as a valid JSON objec
t: invalid object format, expected opening character '{' or '[' at: '/etc/zabbix/scripts/disk_stat.sh: Zeile 172: column: Komm
ando nicht gefunden.
{
"ZBX_Disk_Stat": [ {
       "name": "sda",
       "read_complete": "368558914",
       "r
 5456:20231108:192632.198 error reason for "ldap02.server.net:custom.blkdev.io_queue[sda]" changed: Preprocessing
failed for: /etc/zabbix/scripts/disk_stat.sh: Zeile 172: column: Kommando nicht gefunden..{."ZBX_Disk_Stat": ...
1. Failed: cannot extract value from json by path "$['ZBX_Disk_Stat'][0]['io_queue']": cannot parse as a valid JSON object: in
valid object format, expected opening character '{' or '[' at: '/etc/zabbix/scripts/disk_stat.sh: Zeile 172: column: Kommando
nicht gefunden.
{
"ZBX_Disk_Stat": [ {
       "name": "sda",
       "read_complete": "368558914",
       "r
^C

Any idea?

column 172:

     COLUMN_VERSION="$(column --version|grep -oe '[0-9\.]*')"
     if [[ "$(echo -e "2.30\n${COLUMN_VERSION}"| sort -V | head -n 1)" == 2.30 ]]; then
       # column version >= 2.30 and has --json option
       # https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.30/v2.30-ReleaseNotes
       blkdev_all_stat "$2"
     else
duven87 commented 10 months ago

Ok, util-linux was installet but bsdmainutils not.. After apt-install bsdmainutils it worked. (Debian 11)

duven87 commented 10 months ago

But in another Server (Ubuntu Xenial) :

column: invalid option -- '-'
usage: column [-tx] [-c columns] [-s sep] [file ...]
{
"ZBX_Disk_Stat": [ {
    "name": "dm-2",
    "read_complete": "75806200",
    "read_sector": "2183399518",
    "read_time": "173529696",
    "write_complete": "19760327",
    "write_sector": "1033647968",
    "write_time": "95700380",
    "io_queue": "0"
    } ]
}

Cannot evaluate expression: "Cannot evaluate function "count(#1,0,eq)": item "bpaas.test.de:custom.blkdev.read_operation_pm[sda]" not supported.".

dusharu commented 10 months ago

Hello, looks like column doesn't have key --version.

  1. Can you update package? apt-get install bsdmainutils
  2. Can you run this command to gather more info about your version column?
    ( 
    echo "==== column --version ===="
    column --version; 
    echo "==== column -v  ===="
    column -v; 
    echo "==== column --help ===="
    column --help
    )
duven87 commented 10 months ago

I am also trying to find out what version it has... I cant find it.. Only util-linux or bsdmainutils.. This problem also happens with another server Debian 10 Buster.

root@moodle:~# ( 
> echo "==== column --version ===="
> column --version; 
> echo "==== column -v  ===="
> column -v; 
> echo "==== column --help ===="
> column --help
> )
==== column --version ====
column: invalid option -- '-'
usage: column [-txne] [-c columns] [-s sep] [file ...]
==== column -v  ====
column: invalid option -- 'v'
usage: column [-txne] [-c columns] [-s sep] [file ...]
==== column --help ====
column: invalid option -- '-'
usage: column [-txne] [-c columns] [-s sep] [file ...]
root@moodle:~# 
dusharu commented 10 months ago

Add small fix.
Please, try new version:
https://github.com/dusharu/ZBX_Disk_Stat/blob/master/scripts/disk_stat.sh

duven87 commented 10 months ago

Yeaaah!! Nice!! With this new version there are no more problems on Ubuntu Xenial and Debian Buster servers (I have only tested on 2). Thank you very much again! SOLVED