Skip to main content

    Filter by idea status

    Filter by product

    301 Ideas

    Aleksey
    AlekseySteward **

    IP camera HiWatch DS-I114W monitoring through ISAPI (similar to hardware::devices::hikvision::nvr::isapi::plugin)Needs Votes

    HelloWe have a good plugin "hardware::devices::hikvision::nvr::isapi::plugin", which we made based on the case #3211It is possible to create a new plugin with minimal effort using the developments of the plugin "hardware::devices::hikvision::nvr::isapi::plugin"We have several HiWatch DS-I114W IP cameras in production.These cameras have microcode similar to Hikvision. They do not have SNMP support, but do have basic ISAPI support.Can you please make a new plugin "hardware::devices::hiwatch:camera:isapi::plugin" similar to the plugin "hardware::devices::hikvision::nvr::isapi::plugin"?Only for the new plugin there are some nuances and I will explain them below.------- Device Inventory --------# ./centreon_plugins.pl '--plugin=hardware::devices::hikvision::nvr::isapi::plugin' '--mode=device' '--api-password' 'mypass' '--api-username' 'myuser' '--hostname' 'cam004' '--proto' 'https' '--ssl-opt' 'SSL_verify_mode => SSL_VERIFY_NONE' Model: DS-I114W, Serial: DS-I114W20171106AAWR123556070, Firmware: V5.4.81 That is, you can similarly create '--mode=device' for the plugin "hardware::devices::hiwatch:camera:isapi::plugin"------- Device Uptime --------# ./centreon_plugins.pl '--plugin=hardware::devices::hikvision::nvr::isapi::plugin' '--mode=uptime' '--api-password' 'mypass' '--api-username' 'myuser' '--hostname' 'cam004' '--proto' 'https' '--ssl-opt' 'SSL_verify_mode => SSL_VERIFY_NONE'OK: System uptime is: 26m 2s | 'system.uptime.seconds'=1562;;;0; That is, you can similarly create '--mode=uptime' for the plugin "hardware::devices::hiwatch:camera:isapi::plugin"------- Memory Usage -------# ./centreon_plugins.pl '--plugin=hardware::devices::hikvision::nvr::isapi::plugin' '--mode=memory' '--api-password' 'mypass' '--api-username' 'myuser' '--hostname' 'cam004' '--proto' 'https' '--ssl-opt' 'SSL_verify_mode => SSL_VERIFY_NONE' '--warning-memory-usage-prct' '90' '--critical-memory-usage-prct' '98' '--filter-perfdata' '(.usage.)' OK: memory usage total: 2.18 GB used: 97.00 MB (4.34%) free: 2.09 GB (95.66%) | 'memory.usage.bytes'=101711872B;;;0;2341470208 'memory.usage.percentage'=4.34%;0:90;0:98;0;100 That is, you can, by analogy, create '--mode=memory' for the plugin "hardware::devices::hiwatch:camera:isapi::plugin"------- CPU Usage -------# ./centreon_plugins.pl' '--plugin=hardware::devices::hikvision::nvr::isapi::plugin' '--mode=cpu' '--api-password' 'mypass' '--api-username' 'myuser' '--hostname' 'cam004' '--proto' 'https' '--ssl-opt' 'SSL_verify_mode => SSL_VERIFY_NONE' OK: Cpu utilization: 91.00% | 'cpu.utilization.percentage'=91%;;;0;100 That is, you can similarly create '--mode=cpu' for the plugin "hardware::devices::hiwatch:camera:isapi::plugin"------- Device Time -------# ./centreon_plugins.pl' '--plugin=hardware::devices::hikvision::nvr::isapi::plugin' '--mode=time' '--api-password' 'mypass' '--api-username' 'myuser' '--hostname' 'cam004' '--proto' 'https' '--ssl-opt' 'SSL_verify_mode => SSL_VERIFY_NONE' '--critical-offset' '-180:180' '--timezone' '+0300' '--warning-offset' '-60:60' --debug --verboseUNKNOWN: Cannot find time informations======> request send...======> response doneHTTP/1.1 200 OK...<?xml version="1.0" encoding="UTF-8"?><Time version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema"><timeMode opt="NTP,manual"/></Time> That is, you can similarly create '--mode=time' for the plugin "hardware::devices::hiwatch:camera:isapi::plugin"But in order for this mode to work, you need to make a request to ISAPI not at /ISAPI/System/time/capabilities , but at /ISAPI/System/timeHere is an example of the returned data:<Time version="2.0"><timeMode>NTP</timeMode><localTime>2023-11-09T18:32:36+03:00</localTime><timeZone>CST-3:00:00</timeZone></Time> ------- Device Protocols -------# ./centreon_plugins.pl' '--plugin=hardware::devices::hikvision::nvr::isapi::plugin' '--mode=protocols' '--api-password' 'mypass' '--api-username' 'myuser' '--hostname' 'cam004' '--proto' 'https' '--ssl-opt' 'SSL_verify_mode => SSL_VERIFY_NONE''--warning-status' '(%{name} eq "RTSP" and %{enabled} eq "true") or (%{name} eq "HTTPS" and %{enabled} ne "true")' --debug --verboseUNKNOWN: 400 Bad Request======> request send..======> response doneHTTP/1.1 400 Bad Request...<?xml version="1.0" encoding="UTF-8"?><ResponseStatus version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema"><requestURL>/ISAPI/Security/adminAccesses/capabilities</requestURL><statusCode>6</statusCode><statusString>Invalid XML Content</statusString><subStatusCode>badXmlContent</subStatusCode></ResponseStatus> That is, you can similarly create '--mode=protocols' for the plugin "hardware::devices::hiwatch:camera:isapi::plugin"But in order for this mode to work, you need to make a request to ISAPI not at /ISAPI/Security/adminAccesses/capabilities , but at /ISAPI/Security/adminAccessesHere is an example of the returned data:AdminAccessProtocolList version="2.0"><AdminAccessProtocol version="2.0"><id>1</id><protocol>HTTP</protocol><portNo>80</portNo></AdminAccessProtocol><AdminAccessProtocol version="2.0"><id>2</id><enabled>true</enabled><protocol>HTTPS</protocol><portNo>443</portNo></AdminAccessProtocol><AdminAccessProtocol version="2.0"><id>3</id><protocol>DEV_MANAGE</protocol><portNo>8000</portNo></AdminAccessProtocol><AdminAccessProtocol version="2.0"><id>4</id><protocol>RTSP</protocol><portNo>554</portNo></AdminAccessProtocol></AdminAccessProtocolList> If necessary, I am ready to provide additional information.Thank you.

    Aleksey
    AlekseySteward **

    Digi AnywhereUSB/14 monitoring through SSH CLINeeds Votes

    Hello,Monitoring of Digi AnywhereUSB devices via SNMP is very poorly implemented by DIGI.Therefore, I ask you to implement monitoring through SSHI will give a number of commands that may be useful to usAs I understand it, the last column is the percentage of flash usage:#> dfFilesys blocks used bsize files usedWEB 1107 42 512 234 2CFGDATA 984 151 512 630 18 General Information on CPU Utilization and Memory Usage (two identical commands):#> display device#> info deviceDevice Information:Product : AnywhereUSB/14MAC Address : 00:40:9D:8A:12:22Firmware Version : 1.95.21.64 (build 82002081_P awusb14 eos 2/02/2018 8:27:24a)Boot Version : 1.09.10.6 (release 82002082_B awusb14 bootloader 11/09/2009)Post Version : 1.09.9.39 (release 82001552_A generic_travis hwdiag 11/09/2009)Product VPD Version : noneProduct ID : 0x0121Hardware Strapping : 0x0000CPU Utilization : 2 %Uptime : 1 day, 4 hours, 37 minutes, 25 secondsTotal Memory : 134217728Used Memory : 10775620Free Memory : 123442108 Full Firmware Version Information:#> display versionsAnywhereUSB/14:Component Part-Number Release-TagBOOT 82002082 release 82002082_B awusb14 bootloader 11/09/2009POST 82001552 release 82001552_A generic_travis hwdiag 11/09/2009 (V1.09.9.39)Stored EOS 82002081 build 82002081_P awusb14 eos 2/02/2018 8:27:24a (V1.95.21.64)Running EOS 82002081 build 82002081_P awusb14 eos 2/02/2018 8:27:24a (V1.95.21.64) List of current connections to USB ports:#> whoID From To Protocol Sessions-- --------------------- --------------------- -------------------- --------1 serial 1 local shell term2 local host 192.168.12.15 (Group 4) Realport USB3 local host 192.168.0.134 (Group 13) Realport USB4 local host 192.168.144.55 (Group 3) Realport USB5 local host 192.168.0.135 (Group 14) Realport USB6 local host 192.168.0.131 (Group 10) Realport USB7 local host 192.168.0.132 (Group 11) Realport USB8 local host 192.168.12.16 (Group 5) Realport USB9 local host 192.168.0.133 (Group 12) Realport USB10 local host 192.168.40.15 (Group 7) Realport USB11 192.168.1.100 local host ssh12 192.168.1.100 local shell ssh It is very important to check the group number here.There are 14 groups in total (1 ... 14).Group numbers must be allowed to be described as a plugin option.For example, by default, all groups from 1 to 14 are checked.If there is no group in the connection list, then this is a problem.We also need to be allowed to select group numbers from the list.For example, if we need to check only some groups of 1,3,5-8 (like --check-usb-groups = '1,3,5-8') Detailed memory usage information:#> display memory fullMemory Usage: Main Memory : Total Memory : 134217728 Used Memory : 10788052 Free Memory : 123429676 Network Memory : Current Maximum Allocated : 144704 145596 In use : 104336 130108 On recycle lists : 40368 46340 Network Resource Item Stats : Item | Size | In Use | Allocated | Maximum ttTimer | 36 | 4 | 8 | 10 ttPacket | 48 | 78 | 135 | 135 ttRte | 116 | 5 | 7 | 7 ttSocket | 268 | 9 | 10 | 10 ttTcpVect | 860 | 75 | 82 | 82 buffers | 32 | 3 | 6 | 9 64 | 0 | 2 | 8 128 | 2 | 4 | 4 256 | 78 | 134 | 134 512 | 0 | 1 | 4 1024 | 0 | 1 | 1 2048 | 2 | 5 | 6 4096 | 2 | 4 | 4 >4096 | 0 | 0 | 0 Message Block Stats : In Use | Allocated | Maximum | Success | Failure 29 | 55 | 59 | 635634 | 0 Data Block Stats : Size | In Use | Allocated | Maximum | Success | Failure 16 | 8 | 44 | 59 | 635111 | 0 64 | 27 | 27 | 27 | 246 | 0 128 | 0 | 21 | 22 | 283 | 0 256 | 0 | 0 | 0 | 0 | 0 512 | 0 | 0 | 0 | 0 | 0 Serial Port Usage Information:#> display serialSerial Status: Port# RTS CTS DSR DCD DTR RI OFC IFC 1 on off off off on off off off #> info serialSerial port #1 statistics:rbytes : 0 tbytes : 9overrun errors : 0 overflow errors : 0frame errors : 0 parity errors : 0breaks : 0signal changes : CTS DSR RI DCD RTS DTR 0 0 0 0 1 1 Enabled Services Information:#> show service Service Configuration : index state ipport keepalive nodelay dlyd-ack service 1 off 7 off off 200 TCP Echo Service 2 off 7 na na 200 UDP Echo Service 3 on 22 off off 200 SSH Service 4 on 23 off off 200 Telnet Service 13 on 80 na na 200 HTTP Service 14 on 161 na na 200 SNMP Service 5 on 443 na na 200 HTTPS Service 12 on 771 off na 5 RealPort Service 6 on 1027 off na 5 Encrypted RealPort Service 7 on 2001 off off 200 Telnet Server (Port 1) 8 on 2101 off off 200 TCP Server (Port 1) 9 on 2101 na na 200 Serial/UDP Server (Port 1) 15 on 2362 na na 200 ADDP Service 10 off 2501 off off 200 SSH Server (Port 1) 11 on 2601 off off 200 Secure Socket Service (Port 1) 16 on 3422 off na 5 Anywhere/USB Service 17 on 3423 off na 5 Encrypted RealPort Service Here, I do not understand why the SSH Server service is displayed in the off statusPerhaps it makes sense to add an option that allows us to customize the list of services whose status should be "on"Important services for USB ports:RealPort Service Encrypted RealPort Service Anywhere/USB ServiceAdditionally, you can implement a check for service TCP-listeners (and UDP-listeners)#> display tcp TCP Table: Idx family Recv-Q Send-Q LocalAddress ForeignAddress Refs State/Backlog RTO/Count 18 IPV4 0/8192 0/8192 0.0.0.0:22 0.0.0.0:0 2 LISTEN/0 0/0 19 IPV4 0/8192 0/8192 0.0.0.0:23 0.0.0.0:0 2 LISTEN/0 0/0 29 IPV4 0/8192 0/8192 0.0.0.0:80 0.0.0.0:0 2 LISTEN/0 0/0 20 IPV4 0/8192 0/8192 0.0.0.0:443 0.0.0.0:0 2 LISTEN/0 0/0 25 IPV4 0/8192 0/8192 0.0.0.0:771 0.0.0.0:0 2 LISTEN/0 0/0 21 IPV4 0/8192 0/8192 0.0.0.0:1027 0.0.0.0:0 2 LISTEN/0 0/0 22 IPV4 0/8192 0/8192 0.0.0.0:2001 0.0.0.0:0 2 LISTEN/0 0/0 23 IPV4 0/8192 0/8192 0.0.0.0:2101 0.0.0.0:0 2 LISTEN/0 0/0 24 IPV4 0/8192 0/8192 0.0.0.0:2601 0.0.0.0:0 2 LISTEN/0 0/0 26 IPV4 0/8192 0/8192 0.0.0.0:3422 0.0.0.0:0 2 LISTEN/0 0/0 27 IPV4 0/8192 0/8192 0.0.0.0:3423 0.0.0.0:0 2 LISTEN/0 0/0... #> display udp UDP Table: Index family RecvQ SendQ LocalAddress Refs 30 IPV4 0/8192 0/8192 0.0.0.0:161 3 25 IPV4 0/8192 0/8192 0.0.0.0:2362 2 7 IPV4 0/8192 0/8192 0.0.0.0:3422 3 9 IPV4 0/8192 0/8192 0.0.0.0:34822 2 94 IPV4 0/8192 0/8192 0.0.0.0:47452 2 27 IPV4 0/8192 0/8192 0.0.0.0:47549 2 28 IPV4 0/8192 0/8192 0.0.0.0:62330 2 Here are the numbers of all ports and their descriptions: Network Activity Information:#> info ethernet if=*#> info ethernetEthernet statistics for eth0:InBytes : 59293870 OutBytes : 46232065InUcastPkts : 576238 OutUcastPkts : 652188InNonUcastPkts : 97095 OutNonUcastPkts : 39InDiscards : 0 OutDiscards : 0InErrors : 0 OutErrors : 0InUnknownProtos : 62719 #> info ipIP statistics:InReceives : 571619 OutRequests : 649253InAddressErrors : 4792 DatagramsForwarded : 0InHeaderErrors : 0 OutNoRoutes : 0InUnknownProtos : 52 OutDiscards : 0InDiscards : 0 FragCreates : 0ReassembleOks : 0 FragOks : 0ReassembleFails : 0 FragFails : 0 #> info icmpICMP statistics:InMessages : 2549 OutMessages : 2154InDestUnreachables : 0 OutDestUnreachables : 0InErrors : 0 #> info tcpTCP statistics:InSegments : 504209 OutSegments : 368858InErrors : 0 RetransmitSegments : 127EstabResets : 7 OutResets : 42PassiveOpens : 3555 ActiveOpens : 5Established : 62 AttemptFails : 0 #> info udpUDP statistics:InDatagrams : 5480 OutDatagrams : 5484InErrors : 0 NoPorts : 24693 I am ready to answer your clarifying questions. Source: https://github.com/centreon/centreon-plugins/issues/1722 

    jdevroedDHLSteward **

    Uptime Kuma global external monitoringNeeds Votes

    I have raised this as a bug in the HTTP Loader and it was rejected there, yet, I have discussed this feature request with a Centreon support guys and he was keen on raising this again as a new feature, and not a bug.Allow me to explain why this feature would be absolutely great in Centreon...Many of my colleagues including myself have a server or NAS at home which is running uptime-kuma, and they have created a status page for DHL public internet services. These uptime kuma instances run locally, so we created a page to test from the source of every ISP in our part of the country…(from the principle: page of colleague A going down → ISP issue vs all pages showing issues → effective problem with our public services)https://uptime.kuma.pet/The enormous advantage of this tool is that is is freeware, largely deployed, available on all OSes and IOT devices and is not hosted in the cloud, hence you can really do checks per ISP.I would like to display such a service overview (the “external” view into our applications) within Centreon, but we are receiving a connection refused error…Other (PHP/HTML based) websites are displayed in the HTTP Loader correctly, but when I curl the UptimeKuma status page, no webpage body is displayed...I guess because the node.js parts are not renderedI could easily build a similar view in Wordpress, but the monitoring plugins in wordpress are running somewhere on a cloud subscription (and not locally) and this is a disadvantage: I do not want to provide a list of my company hosts to a third-party, and the monitoring then relies on the uptime of a single cloud subscription which is basically blackboxIf Centreon could create something similar to the HTTP Loader, this would allow the addition of http(S) monitoring from public webservices, from the public  perspective of various local ISPs, displaying it internally on the central monitoring solution