[SOLVED] Poller[0] WARNING: Poller Output Table not Empty

Post general support questions here that do not specifically fall into the Linux or Windows categories.

Moderators: Developers, Moderators

Post Reply
Ork1983
Posts: 6
Joined: Mon Dec 12, 2016 3:16 am

[SOLVED] Poller[0] WARNING: Poller Output Table not Empty

Post by Ork1983 »

Hi,

Hopefully somebody will be able to assist me in troubleshooting.
I am trying to draw a CPU utilization graph for 2 Dell Powerconnect 8024F switches using a custom graph template that calls a Perl script.
The script works well when called from the command line, but graphs don't get created in Cacti.
The log message describing the problem is this:

Code: Select all

POLLER: Poller[0] WARNING: Poller Output Table not Empty. Issues Found: 6, Data Sources: (DS[134]), (DS[135]), (DS[136]), (DS[137]), (DS[138]), (DS[139])
(BTW, RRD files don't get created; there has to be 6 of them - 3 for each of our 2 switches)
The problem does not happen with other graphs that do not utilize scripts.

The initial poller was Spine, later it was changed to cmd.php with no difference.
What I've tried is:
1) changed polling interval to 1 minute (in Cacti's GUI and in crontab);
2) manually created RRD files via Debug Data Source. Graphs appeared, but values were NaN, and RRD files never got updated.
3) manually truncated the table "poller_output". It got populated the next cycle.
4) changed the string in the Data Input Method from

Code: Select all

perl <path_cacti>/scripts/62xx_cpu.pl -H <ip> -C <co> -version <ve> -port <port> -domain <do> -user <user> -pass <pass> -authprotocol <ap> -privatepassword <pp> -privateprotocol <ppo> -timeout <ti>
to

Code: Select all

perl /usr/share/cacti/scripts/62xx_cpu.pl -H <ip>
and even to

Code: Select all

/usr/bin/perl /var/lib/cacti/scripts/62xx_cpu.pl -H <ip>
(to eliminate implicit paths and links)

(I've added my community string directly in the script; the script returns values when called from the command line.)
5) changed PHP memory limit from 64M to 1024M;
6) changed the poller from Spine to cmd.

No luck so far.

Here's some info about my setup:

Technical Support

General Information
Date Mon, 12 Dec 2016 11:55:47 +0400
Cacti Version 0.8.8h
Cacti OS unix
SNMP Version NET-SNMP version: 5.7.2
RRDTool Version RRDTool 1.4.x
Hosts 3
Graphs 69
Data Sources Script/Command: 11
SNMP: 6
SNMP Query: 59
Total: 76

Poller Information
Interval 300
Type cmd.php
Items Action[0]: 124
Action[1]: 11
Total: 135
Concurrent Processes 1
Max Threads 1
PHP Servers 1
Script Timeout 25
Max OID 10
Last Run Statistics Time:1.0357 Method:spine Processes:1 Threads:1 Hosts:4 HostsPerProcess:4 DataSources:131 RRDsProcessed:66

PHP Information
PHP Version 5.4.16
PHP OS Linux
PHP uname Linux SRV-GILAN-LOG02 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64
PHP SNMP Installed
max_execution_time 30
memory_limit 1024M


Please advise - what I should try next?
Thank you in advance for any assistance.
Last edited by Ork1983 on Sat Dec 17, 2016 7:10 am, edited 1 time in total.
Ork1983
Posts: 6
Joined: Mon Dec 12, 2016 3:16 am

Re: POLLER: Poller[0] WARNING: Poller Output Table not Empty

Post by Ork1983 »

No idea? Anyone?
I could open a Teamviewer session to my PC if necessary.
Please share any tip, I will be immensely grateful!
Ork1983
Posts: 6
Joined: Mon Dec 12, 2016 3:16 am

Re: POLLER: Poller[0] WARNING: Poller Output Table not Empty

Post by Ork1983 »

BTW, running poller manually via

Code: Select all

php /usr/share/cacti/poller.php
produces no output.
smiles
Cacti User
Posts: 79
Joined: Mon Sep 10, 2012 5:54 pm

Re: POLLER: Poller[0] WARNING: Poller Output Table not Empty

Post by smiles »

Ork1983
Posts: 6
Joined: Mon Dec 12, 2016 3:16 am

Re: POLLER: Poller[0] WARNING: Poller Output Table not Empty

Post by Ork1983 »

Solved.
The culprit was the f***ing Perl script!
While the Data Input Method in Cacti expected 3 Output fileds named "5Secs", "1Min" and "5Min", the script's print part was like this:

Code: Select all

        $res=$result->{$snmpoid};
print "$res               ";
        $res=~ s/\s+//g;
        $res=~ s/\(/:/g;
        $res=~ s/%\)//g;
        $res=~ s/\,/ /g;
        $res=~ s/\s+$//;
        print $res;
I.e. it had no connection to the 3 Output Fields in the Data Input Method in Cacti.
After correcting the script's print part to this:

Code: Select all

        $res=$result->{$snmpoid};
        my $str = $res;
        $str =~ tr/ //ds;
        my @words = split /Secs/, $str;

        my @one = split /\%/, $words[1];
        my @one = split /\(/, $one[0];
        my $sec5 = $one[1];

        my @two = split /\%/, $words[2];
        my @two = split /\(/, $two[0];
        my $sec60 = $two[1];

        my @three = split /\%/, $words[3];
        my @three = split /\(/, $three[0];
        my $sec300 = $three[1];

        print "5Secs:$sec5 1Min:$sec60 5Min:$sec300";
(the last string is where it all connects to 3 Output Fields in the Data Input Method in Cacti)
RRDs started updating, and graphs started to populate!
Yippeee!

P.S. I did not have a Perl pro around, so I won't argue that the print part can be optimized. We just did the simplest thing that worked. If anyone can do the same thing in Perl with less number of strings, you are welcome to share!
Ork1983
Posts: 6
Joined: Mon Dec 12, 2016 3:16 am

Re: POLLER: Poller[0] WARNING: Poller Output Table not Empty

Post by Ork1983 »

smiles, thanks mate!
Although I tried many things in that thread before, I actually started trying everything again after you referred me to that post again.
That's how I looked in depth into the Output Fields of the Data Input Method of that Perl script, and having compared that to a working script (Linux host load average), I noticed a disconnection between the print statement of the non-working script and its expected Output Fields in Cacti.

P.S. How do I designate this topic as SOLVED?
smiles
Cacti User
Posts: 79
Joined: Mon Sep 10, 2012 5:54 pm

Re: POLLER: Poller[0] WARNING: Poller Output Table not Empty

Post by smiles »

Ork1983,

Glad to hear you resolved your issue! Not sure on the solved flag, It's not available on my account either. At a minimum you can edit your original post and add the [SOLVED] tag to the title.
Ork1983
Posts: 6
Joined: Mon Dec 12, 2016 3:16 am

Re: POLLER: Poller[0] WARNING: Poller Output Table not Empty

Post by Ork1983 »

I thought about that, but it seems like I'm missing something obvious, because I just can't find a way to edit the title.

BTW, the script in question is part of this
http://docs.cacti.net/usertemplate:host ... nnect:62xx
template, so those willing to use the script, please be informed!
User avatar
phalek
Developer
Posts: 2838
Joined: Thu Jan 31, 2008 6:39 am
Location: Kressbronn, Germany
Contact:

Re: POLLER: Poller[0] WARNING: Poller Output Table not Empty

Post by phalek »

You need to edit your original first post and change the "subject" line.
Greetings,
Phalek
---
Need more help ? Read the Cacti documentation or my new Cacti 1.x Book
Need on-site support ? Look here Cacti Workshop
Need professional Cacti support ? Look here CereusService
---
Plugins : CereusReporting
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest