Skip to main content

Hello,
I have a problem on a Plugin apps::vmware::vsphere8::esx::plugin

/usr/lib/centreon/plugins/centreon_vmware8_esx_restapi.pl --plugin=apps::vmware::vsphere8::esx::plugin --mode=power --hostname='******' --port='443' --proto='https' --esx-id='****' --username='*****' --password='*****'

UNKNOWN: Undefined subroutine &centreon::plugins::misc::is_empty called at /usr/lib/centreon/plugins/centreon_vmware8_esx_restapi.pl line 839.

 

Here's the result. Regardless of the mode, the result is always the same. FYI, I have the latest version of the plugin: centreon-plugin-Virtualization-Vmware8-ESX-Restapi-20250400-1.el9.noarch

thanks you

Hi,

Can you make sure the script file has been installed in full?

Here’s what I get:

md5sum /usr/lib/centreon/plugins/centreon_vmware8_esx_restapi.pl
b5a3d04c0c5f13ed1e3e92a396feea3a  /usr/lib/centreon/plugins/centreon_vmware8_esx_restapi.pl

 


yes:


[xxxxx@centreon-pr ~]# md5sum /usr/lib/centreon/plugins/centreon_vmware8_esx_restapi.pl
b5a3d04c0c5f13ed1e3e92a396feea3a  /usr/lib/centreon/plugins/centreon_vmware8_esx_restapi.pl


Dernière vérification de l’expiration des métadonnées effectuée il y a 2:13:28 le ven. 11 avril 2025 06:06:06.
Le paquet centreon-plugin-Virtualization-Vmware8-Esx-Restapi-20250400-1.el9.noarch est déjà installé.

 


Don’t you have this subroutine defined line 4269?

  sub is_empty {
my $value = shift;
if (!defined($value) or $value eq '') {
return 1;
}
return 0;
}

It should be contained in 

the section opening line 3955:

$fatpacked{"centreon/plugins/misc.pm"} = '#line '.(1+__LINE__).' "'.__FILE__."\"\n".<<'CENTREON_PLUGINS_MISC';

 




Yes i have



UNKNOWN: Undefined subroutine &centreon::plugins::misc::is_empty called at /usr/lib/centreon/plugins/centreon_vmware8_esx_restapi.pl line 839.


line 839:


Info:

  • vSphere 8.0.3.00400

  • Centreon 23.10.23
  • AlmaLinux 9.5

Would you happen to have something else than the packaged plugins under /usr/lib/centreon/plugins  such as a clone of the plugins’ github repo?


No, I just checked, it's the only vmware, with the global centreon_plugins.pl it's the same thing


If you have centreon_plugins.pl then you have the github repo cloned, and it may explain your problem.

What does this command give you?

find /usr/lib/centreon/plugins/ -maxdepth 2 -type d

 


So, how do I remove this duplicate, because I use centreon_plugins.pl a lot :/

 

 find /usr/lib/centreon/plugins/ -maxdepth 2 -type d
/usr/lib/centreon/plugins/
/usr/lib/centreon/plugins/apps
/usr/lib/centreon/plugins/apps/antivirus
/usr/lib/centreon/plugins/apps/apache
/usr/lib/centreon/plugins/apps/apcupsd
/usr/lib/centreon/plugins/apps/automation
/usr/lib/centreon/plugins/apps/backup
/usr/lib/centreon/plugins/apps/bind9
/usr/lib/centreon/plugins/apps/biztalk
/usr/lib/centreon/plugins/apps/bluemind
/usr/lib/centreon/plugins/apps/centreon
/usr/lib/centreon/plugins/apps/ceph
/usr/lib/centreon/plugins/apps/cisco
/usr/lib/centreon/plugins/apps/citrix
/usr/lib/centreon/plugins/apps/controlm
/usr/lib/centreon/plugins/apps/drbd
/usr/lib/centreon/plugins/apps/dynamics
/usr/lib/centreon/plugins/apps/emc
/usr/lib/centreon/plugins/apps/ericsson
/usr/lib/centreon/plugins/apps/github
/usr/lib/centreon/plugins/apps/google
/usr/lib/centreon/plugins/apps/gorgone
/usr/lib/centreon/plugins/apps/grafana
/usr/lib/centreon/plugins/apps/graylog
/usr/lib/centreon/plugins/apps/haproxy
/usr/lib/centreon/plugins/apps/hashicorp
/usr/lib/centreon/plugins/apps/hddtemp
/usr/lib/centreon/plugins/apps/ibm
/usr/lib/centreon/plugins/apps/inin
/usr/lib/centreon/plugins/apps/ipfabric
/usr/lib/centreon/plugins/apps/java
/usr/lib/centreon/plugins/apps/jenkins
/usr/lib/centreon/plugins/apps/jive
/usr/lib/centreon/plugins/apps/jmeter
/usr/lib/centreon/plugins/apps/keepalived
/usr/lib/centreon/plugins/apps/kingdee
/usr/lib/centreon/plugins/apps/lmsensors
/usr/lib/centreon/plugins/apps/lotus
/usr/lib/centreon/plugins/apps/lync
/usr/lib/centreon/plugins/apps/microsoft
/usr/lib/centreon/plugins/apps/monitoring
/usr/lib/centreon/plugins/apps/mq
/usr/lib/centreon/plugins/apps/mulesoft
/usr/lib/centreon/plugins/apps/nginx
/usr/lib/centreon/plugins/apps/nmap
/usr/lib/centreon/plugins/apps/nsclient
/usr/lib/centreon/plugins/apps/openldap
/usr/lib/centreon/plugins/apps/openvpn
/usr/lib/centreon/plugins/apps/openweathermap
/usr/lib/centreon/plugins/apps/oracle
/usr/lib/centreon/plugins/apps/pacemaker
/usr/lib/centreon/plugins/apps/pfsense
/usr/lib/centreon/plugins/apps/php
/usr/lib/centreon/plugins/apps/pineapp
/usr/lib/centreon/plugins/apps/protocols
/usr/lib/centreon/plugins/apps/proxmox
/usr/lib/centreon/plugins/apps/pvx
/usr/lib/centreon/plugins/apps/redis
/usr/lib/centreon/plugins/apps/rrdcached
/usr/lib/centreon/plugins/apps/rudder
/usr/lib/centreon/plugins/apps/sahipro
/usr/lib/centreon/plugins/apps/sailpoint
/usr/lib/centreon/plugins/apps/salesforce
/usr/lib/centreon/plugins/apps/selenium
/usr/lib/centreon/plugins/apps/sendmail
/usr/lib/centreon/plugins/apps/slack
/usr/lib/centreon/plugins/apps/smartermail
/usr/lib/centreon/plugins/apps/squid
/usr/lib/centreon/plugins/apps/thales
/usr/lib/centreon/plugins/apps/tomcat
/usr/lib/centreon/plugins/apps/tosca
/usr/lib/centreon/plugins/apps/toshiba
/usr/lib/centreon/plugins/apps/varnish
/usr/lib/centreon/plugins/apps/video
/usr/lib/centreon/plugins/apps/virtualization
/usr/lib/centreon/plugins/apps/vmware
/usr/lib/centreon/plugins/apps/voip
/usr/lib/centreon/plugins/apps/vtom
/usr/lib/centreon/plugins/apps/wallix
/usr/lib/centreon/plugins/apps/wazuh
/usr/lib/centreon/plugins/apps/zoom
/usr/lib/centreon/plugins/blockchain
/usr/lib/centreon/plugins/blockchain/hyperledger
/usr/lib/centreon/plugins/blockchain/parity
/usr/lib/centreon/plugins/centreon
/usr/lib/centreon/plugins/centreon/common
/usr/lib/centreon/plugins/centreon/plugins
/usr/lib/centreon/plugins/cloud
/usr/lib/centreon/plugins/cloud/aws
/usr/lib/centreon/plugins/cloud/azure
/usr/lib/centreon/plugins/cloud/cadvisor
/usr/lib/centreon/plugins/cloud/cloudfoundry
/usr/lib/centreon/plugins/cloud/docker
/usr/lib/centreon/plugins/cloud/google
/usr/lib/centreon/plugins/cloud/ibm
/usr/lib/centreon/plugins/cloud/iics
/usr/lib/centreon/plugins/cloud/kubernetes
/usr/lib/centreon/plugins/cloud/microsoft
/usr/lib/centreon/plugins/cloud/nutanix
/usr/lib/centreon/plugins/cloud/outscale
/usr/lib/centreon/plugins/cloud/ovh
/usr/lib/centreon/plugins/cloud/prometheus
/usr/lib/centreon/plugins/cloud/talend
/usr/lib/centreon/plugins/cloud/vmware
/usr/lib/centreon/plugins/contrib
/usr/lib/centreon/plugins/contrib/collection
/usr/lib/centreon/plugins/contrib/tutorial
/usr/lib/centreon/plugins/database
/usr/lib/centreon/plugins/database/cassandra
/usr/lib/centreon/plugins/database/couchdb
/usr/lib/centreon/plugins/database/db2
/usr/lib/centreon/plugins/database/elasticsearch
/usr/lib/centreon/plugins/database/firebird
/usr/lib/centreon/plugins/database/influxdb
/usr/lib/centreon/plugins/database/informix
/usr/lib/centreon/plugins/database/mongodb
/usr/lib/centreon/plugins/database/mssql
/usr/lib/centreon/plugins/database/mysql
/usr/lib/centreon/plugins/database/oracle
/usr/lib/centreon/plugins/database/postgres
/usr/lib/centreon/plugins/database/redis
/usr/lib/centreon/plugins/database/rrdtool
/usr/lib/centreon/plugins/database/sap
/usr/lib/centreon/plugins/database/sybase
/usr/lib/centreon/plugins/database/warp10
/usr/lib/centreon/plugins/example
/usr/lib/centreon/plugins/example/custommode
/usr/lib/centreon/plugins/example/mode
/usr/lib/centreon/plugins/hardware
/usr/lib/centreon/plugins/hardware/ats
/usr/lib/centreon/plugins/hardware/devices
/usr/lib/centreon/plugins/hardware/kvm
/usr/lib/centreon/plugins/hardware/pdu
/usr/lib/centreon/plugins/hardware/printers
/usr/lib/centreon/plugins/hardware/sensors
/usr/lib/centreon/plugins/hardware/server
/usr/lib/centreon/plugins/hardware/telephony
/usr/lib/centreon/plugins/hardware/ups
/usr/lib/centreon/plugins/network
/usr/lib/centreon/plugins/network/3com
/usr/lib/centreon/plugins/network/a10
/usr/lib/centreon/plugins/network/acmepacket
/usr/lib/centreon/plugins/network/adva
/usr/lib/centreon/plugins/network/aerohive
/usr/lib/centreon/plugins/network/alcatel
/usr/lib/centreon/plugins/network/allied
/usr/lib/centreon/plugins/network/alvarion
/usr/lib/centreon/plugins/network/arista
/usr/lib/centreon/plugins/network/arkoon
/usr/lib/centreon/plugins/network/aruba
/usr/lib/centreon/plugins/network/athonet
/usr/lib/centreon/plugins/network/atrica
/usr/lib/centreon/plugins/network/atto
/usr/lib/centreon/plugins/network/audiocodes
/usr/lib/centreon/plugins/network/barracuda
/usr/lib/centreon/plugins/network/beeware
/usr/lib/centreon/plugins/network/bluecoat
/usr/lib/centreon/plugins/network/brocade
/usr/lib/centreon/plugins/network/cambium
/usr/lib/centreon/plugins/network/chapsvision
/usr/lib/centreon/plugins/network/checkpoint
/usr/lib/centreon/plugins/network/cisco
/usr/lib/centreon/plugins/network/citrix
/usr/lib/centreon/plugins/network/colubris
/usr/lib/centreon/plugins/network/cyberoam
/usr/lib/centreon/plugins/network/dell
/usr/lib/centreon/plugins/network/denyall
/usr/lib/centreon/plugins/network/digi
/usr/lib/centreon/plugins/network/dlink
/usr/lib/centreon/plugins/network/efficientip
/usr/lib/centreon/plugins/network/enterasys
/usr/lib/centreon/plugins/network/evertz
/usr/lib/centreon/plugins/network/extreme
/usr/lib/centreon/plugins/network/f5
/usr/lib/centreon/plugins/network/fiberstore
/usr/lib/centreon/plugins/network/fortinet
/usr/lib/centreon/plugins/network/freebox
/usr/lib/centreon/plugins/network/fritzbox
/usr/lib/centreon/plugins/network/h3c
/usr/lib/centreon/plugins/network/hirschmann
/usr/lib/centreon/plugins/network/hp
/usr/lib/centreon/plugins/network/huawei
/usr/lib/centreon/plugins/network/ibm
/usr/lib/centreon/plugins/network/infoblox
/usr/lib/centreon/plugins/network/juniper
/usr/lib/centreon/plugins/network/kemp
/usr/lib/centreon/plugins/network/keysight
/usr/lib/centreon/plugins/network/lenovo
/usr/lib/centreon/plugins/network/libraesva
/usr/lib/centreon/plugins/network/meru
/usr/lib/centreon/plugins/network/microsens
/usr/lib/centreon/plugins/network/mikrotik
/usr/lib/centreon/plugins/network/mitel
/usr/lib/centreon/plugins/network/moxa
/usr/lib/centreon/plugins/network/mrv
/usr/lib/centreon/plugins/network/netgear
/usr/lib/centreon/plugins/network/nokia
/usr/lib/centreon/plugins/network/nortel
/usr/lib/centreon/plugins/network/oneaccess
/usr/lib/centreon/plugins/network/opengear
/usr/lib/centreon/plugins/network/oracle
/usr/lib/centreon/plugins/network/paloalto
/usr/lib/centreon/plugins/network/patton
/usr/lib/centreon/plugins/network/peplink
/usr/lib/centreon/plugins/network/perle
/usr/lib/centreon/plugins/network/polycom
/usr/lib/centreon/plugins/network/rad
/usr/lib/centreon/plugins/network/radware
/usr/lib/centreon/plugins/network/raisecom
/usr/lib/centreon/plugins/network/redback
/usr/lib/centreon/plugins/network/riverbed
/usr/lib/centreon/plugins/network/ruckus
/usr/lib/centreon/plugins/network/ruggedcom
/usr/lib/centreon/plugins/network/securactive
/usr/lib/centreon/plugins/network/silverpeak
/usr/lib/centreon/plugins/network/sonicwall
/usr/lib/centreon/plugins/network/sonus
/usr/lib/centreon/plugins/network/sophos
/usr/lib/centreon/plugins/network/stonesoft
/usr/lib/centreon/plugins/network/stormshield
/usr/lib/centreon/plugins/network/symbol
/usr/lib/centreon/plugins/network/teltonika
/usr/lib/centreon/plugins/network/tplink
/usr/lib/centreon/plugins/network/ubiquiti
/usr/lib/centreon/plugins/network/ucopia
/usr/lib/centreon/plugins/network/vectra
/usr/lib/centreon/plugins/network/versa
/usr/lib/centreon/plugins/network/viptela
/usr/lib/centreon/plugins/network/watchguard
/usr/lib/centreon/plugins/network/zyxel
/usr/lib/centreon/plugins/notification
/usr/lib/centreon/plugins/notification/centreon
/usr/lib/centreon/plugins/notification/email
/usr/lib/centreon/plugins/notification/foxbox
/usr/lib/centreon/plugins/notification/highsms
/usr/lib/centreon/plugins/notification/jasminsms
/usr/lib/centreon/plugins/notification/microsoft
/usr/lib/centreon/plugins/notification/ovhsms
/usr/lib/centreon/plugins/notification/prowl
/usr/lib/centreon/plugins/notification/sirportly
/usr/lib/centreon/plugins/notification/slack
/usr/lib/centreon/plugins/notification/telegram
/usr/lib/centreon/plugins/os
/usr/lib/centreon/plugins/os/aix
/usr/lib/centreon/plugins/os/as400
/usr/lib/centreon/plugins/os/freebsd
/usr/lib/centreon/plugins/os/hpux
/usr/lib/centreon/plugins/os/linux
/usr/lib/centreon/plugins/os/mac
/usr/lib/centreon/plugins/os/picos
/usr/lib/centreon/plugins/os/solaris
/usr/lib/centreon/plugins/os/windows
/usr/lib/centreon/plugins/snmp_standard
/usr/lib/centreon/plugins/snmp_standard/mode
/usr/lib/centreon/plugins/storage
/usr/lib/centreon/plugins/storage/adic
/usr/lib/centreon/plugins/storage/avid
/usr/lib/centreon/plugins/storage/bdt
/usr/lib/centreon/plugins/storage/buffalo
/usr/lib/centreon/plugins/storage/dell
/usr/lib/centreon/plugins/storage/emc
/usr/lib/centreon/plugins/storage/exagrid
/usr/lib/centreon/plugins/storage/fujitsu
/usr/lib/centreon/plugins/storage/hitachi
/usr/lib/centreon/plugins/storage/hp
/usr/lib/centreon/plugins/storage/huawei
/usr/lib/centreon/plugins/storage/ibm
/usr/lib/centreon/plugins/storage/kaminario
/usr/lib/centreon/plugins/storage/lenovo
/usr/lib/centreon/plugins/storage/netapp
/usr/lib/centreon/plugins/storage/netgear
/usr/lib/centreon/plugins/storage/nimble
/usr/lib/centreon/plugins/storage/oracle
/usr/lib/centreon/plugins/storage/overland
/usr/lib/centreon/plugins/storage/panzura
/usr/lib/centreon/plugins/storage/purestorage
/usr/lib/centreon/plugins/storage/qnap
/usr/lib/centreon/plugins/storage/qsan
/usr/lib/centreon/plugins/storage/quantum
/usr/lib/centreon/plugins/storage/storagetek
/usr/lib/centreon/plugins/storage/synology
/usr/lib/centreon/plugins/storage/violin
/usr/lib/centreon/plugins/storage/wd

 


Maybe I’m following a false track, so don’t break anything at the moment, but can you do the following commands to try to isolate the plugin?

cp /usr/lib/centreon/plugins/centreon_vmware8_esx_restapi.pl /tmp/
export PERL5LIB=
/tmp/centreon_vmware8_esx_restapi.pl <all the arguments of your previous check command>

 


If my previous test works, here’s what I suggest to make everything work:

  • First, change the path of your custom commands by adding gh-plugins after $CENTREONPLUGINS$.
    Meaning: $CENTREONPLUGINS$/centreon_plugins.pl should become $CENTREONPLUGINS$/gh-plugins/centreon_plugins.pl.
  • Then hold before exporting the configuration and run the following commands on each poller:
cd /usr/lib/centreon/plugins/
mkdir gh-plugins
mv $(find . -maxdepth 1 -type d -not -name gh-plugins -not -name .) gh-plugins/
  • And right after that, export the configuration to all pollers.

After that you should not have interactions between the local github plugins and the packaged plugins.


Reply