I have configured munin to fetch logs from another server yesterday and also custom configured based on the config example a Totals for both server loads.
I used rrdtool to convert the rrd files to xml and copy them over and convert them back to rrd for the new machine in order to bring over it's history.
Now it worked nicely but the totals seemed to have stopped generating after a while. I checked the logs and it was saying that the load2-day.png ... and so on files are not found.
I checked and they are there, chown and chmod match munin.
Any ideas on why it might not see the files and once I get it to see them how can I force a complete graphs regeneration so I don't have to wait 5 minutes to find out if it works?
Complete logs here:
The perl errors seems to not affect anything, though I would appreciate a hint on removing it.
2013/09/10 13:45:10 Starting munin-graph
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value in subroutine entry at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 758.
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value $filename in concatenation (.) or string at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 775.
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value $filename in concatenation (.) or string at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 784.
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value $filename in concatenation (.) or string at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 786.
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value $filename in concatenation (.) or string at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 787.
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value in subroutine entry at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 758.
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value $filename in concatenation (.) or string at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 775.
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value $filename in concatenation (.) or string at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 784.
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value $filename in concatenation (.) or string at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 786.
2013/09/10 13:45:10 [PERL WARNING] Use of uninitialized value $filename in concatenation (.) or string at /usr/share/perl5/vendor_perl/Munin/Master/GraphOld.pm line 787.
2013/09/10 13:45:10 [RRD ERROR] Unable to graph /var/www/html/munin/example.com/Totals/load2-month.png : opening '': No such file or directory
2013/09/10 13:45:10 [RRD ERROR] Unable to graph /var/www/html/munin/example.com/Totals/load2-week.png : opening '': No such file or directory
2013/09/10 13:45:10 [RRD ERROR] Unable to graph /var/www/html/munin/example.com/Totals/load2-day.png : opening '': No such file or directory
2013/09/10 13:45:10 [RRD ERROR] Unable to graph /var/www/html/munin/example.com/Totals/load2-year.png : opening '': No such file or directory
2013/09/10 13:45:10 [INFO] Graphed service example.com;Totals:load2 (0.05 sec)
2013/09/10 13:45:10 [RRD ERROR] Unable to graph /var/www/html/munin/example.com/Totals/load3-month.png : opening '': No such file or directory
2013/09/10 13:45:10 [RRD ERROR] Unable to graph /var/www/html/munin/example.com/Totals/load3-week.png : opening '': No such file or directory
2013/09/10 13:45:10 [RRD ERROR] Unable to graph /var/www/html/munin/example.com/Totals/load3-day.png : opening '': No such file or directory
2013/09/10 13:45:10 [RRD ERROR] Unable to graph /var/www/html/munin/example.com/Totals/load3-year.png : opening '': No such file or directory
The RRD ERROR lines are indicating the graphs (pngs) can't be created because something in RRD is unable to find (or open) some file. This snippet is saying it's trying to open a blank path, and failing.
opening '': No such file or directory
The perl error mentions an "uninitialized value $filename", which given the RRD error is probably part of the problem. Since the graphs are generated out of the RRD files, the likely issue is that the system can't find your RRDs. Consequently, you'll want to check that everything about specifying the location of your RRDs is in order.
Confirm the dbdir directive in munin.conf is correct
Confirm your RRDs are present in the $dbdir/domain/ path
Confirm filesystem permissions allow the munin process to read and write said path
Confirm the host tree (in munin.conf) is correct for the client you're having trouble with
Regarding triggering graph creation: the munin server is driven by cron. You should be able to find a cron job which you can manually run as the munin user in order to trigger the process. The RPM I've used in the past has this job at /etc/cron.d/munin
Related
I'm trying to install the Text::Template module with cpan but get this when I run 'install Text::Template' from the cpan shell.
cpan> install Text::Template
Reading 'C:\Perl64\cpan\sources\authors\01mailrc.txt.gz'
Use of uninitialized value $command in concatenation (.) or string at C:\Perl64\lib/CPAN/Tarzip.pm line 163, <IN> line 1.
'-qdt' is not recognized as an internal or external command,
operable program or batch file.
............................................................................DONE
Reading 'C:\Perl64\cpan\sources\modules\02packages.details.txt.gz'
Use of uninitialized value $command in concatenation (.) or string at C:\Perl64\lib/CPAN/Tarzip.pm line 163.
'-qdt' is not recognized as an internal or external command,
operable program or batch file.
Warning: Your C:\Perl64\cpan\sources\modules\02packages.details.txt.gz does not contain a Line-Count header.
Please check the validity of the index file by comparing it to more
than one CPAN mirror. I'll continue but problems seem likely to
happen.
Warning: Your C:\Perl64\cpan\sources\modules\02packages.details.txt.gz does not contain a Last-Updated header.
Please check the validity of the index file by comparing it to more
than one CPAN mirror. I'll continue but problems seem likely to
happen.
.Could not split line["┬0\cL²\cU\c?└'¸\cCé"]
Could not split line["cÌX'ÔÒ"├█\cP\cE?▀&Ù┌╠5Ó%â¥mþlýBô¶ñg▒R\cIØ\cT\cPȸ\cX."]
Could not split line["\cH·©s:░KÉþ\cC\c^Û{65j¼¸\cL"]
Could not split line["\cD│í¬ð\cP|:ü▒HôU▓┴Bú‗Ð\cZyÄ"]
Giving up parsing your C:\Perl64\cpan\sources\modules\02packages.details.txt.gz, too many errorsReading 'C:\Perl64\cpan\sources\authors\01mailrc.txt.gz'
Use of uninitialized value $command in concatenation (.) or string at C:\Perl64\lib/CPAN/Tarzip.pm line 163.
'-qdt' is not recognized as an internal or external command,
operable program or batch file.
............................................................................DONE
Reading 'C:\Perl64\cpan\sources\modules\02packages.details.txt.gz'
Use of uninitialized value $command in concatenation (.) or string at C:\Perl64\lib/CPAN/Tarzip.pm line 163.
'-qdt' is not recognized as an internal or external command,
operable program or batch file.
Warning: Your C:\Perl64\cpan\sources\modules\02packages.details.txt.gz does not contain a Line-Count header.
Please check the validity of the index file by comparing it to more
than one CPAN mirror. I'll continue but problems seem likely to
happen.
Warning: Your C:\Perl64\cpan\sources\modules\02packages.details.txt.gz does not contain a Last-Updated header.
Please check the validity of the index file by comparing it to more
than one CPAN mirror. I'll continue but problems seem likely to
happen.
.Could not split line["┬0\cL²\cU\c?└'¸\cCé"]
Could not split line["cÌX'ÔÒ"├█\cP\cE?▀&Ù┌╠5Ó%â¥mþlýBô¶ñg▒R\cIØ\cT\cPȸ\cX."]
Could not split line["\cH·©s:░KÉþ\cC\c^Û{65j¼¸\cL"]
Could not split line["\cD│í¬ð\cP|:ü▒HôU▓┴Bú‗Ð\cZyÄ"]
Giving up parsing your C:\Perl64\cpan\sources\modules\02packages.details.txt.gz, too many errorsLockfile removed.
I'm using ActivePerl 5.28.1 64bit on Windows 10. The same problem occurs for all the packages I tried, including Log::Log4perl and Test::More.
I can replicate this by corrupting my sources/modules/02packages.details.txt.gz file.
Erase the files in the C:\Perl64\cpan\sources\modules directory and try again.
I got it to work using Strawberry Perl instead of ActivePerl.
I'm trying to execute a shell script from one server(plantz1). While executing, I have written the script in such a way that it should log in to another system (globez1) and in that second system, one perl script should be running. But i'm getting errors like below:
Please help me somebody on this. Below, I'm taking the commands from the script and showing you the o/p.
plantz1:nyop% ssh globez1 "export PATH=/ilx/ops/sbin:$PATH; /ilx/ops/sbin/mklive_pour ewh drop"
Use of uninitialized value $ENV{"IR"} in concatenation (.) or string at /ilx/ops/sbin/mklive_pour line 25.
Use of uninitialized value $ENV{"IR"} in concatenation (.) or string at /ilx/ops/sbin/mklive_pour line 25.
Use of uninitialized value $ENV{"IR"} in concatenation (.) or string at /ilx/ops/sbin/mklive_pour line 69.
Use of uninitialized value $ENV{"IR"} in concatenation (.) or string at /ilx/ops/sbin/mklive_pour line 69.
No symon.def file? :No such file or directory at /ilx/ops/sbin/mklive_pour line 69.
plantz1 is first server
globez1 is secondary server
/ilx/ops/sbin/mklive_pour - it's the perl script
The %ENV hash contains the environment variables from the operating system environment that started your process. $ENV{IR} contains the value of the IR environment variable. The warning you are getting is telling you that this variable has not been set.
You need to set this variable before running your command. It looks like you're running Linux, so something like this will work:
plantz1:nyop% export IR=something
Unfortunately, as I don't know anything about the software you're trying to use, I can't give you any help as to what the value of that variable needs to be.
Has anyone tried this code on cygwin?
I get these errors:
Can't find string terminator "'" anywhere before EOF at -e line 1.
Use of uninitialized value in pattern match (m//) at ./dos_it.pl line 506.
Use of uninitialized value $shellpath in rindex at ./dos_it.pl line 586.
Use of uninitialized value $shellpath in substr at ./dos_it.pl line 586.
Use of uninitialized value $pathToShell in concatenation (.) or string at ./dos_it.pl line 761.
Use of uninitialized value $shell_conformance in concatenation (.) or string at ./dos_it.pl line 761.
The string that is generated is:
$ ps -ef | perl -ane '1..1 and /^(.*)CO?MM?A?N?D/ and $s=length $1;s/^.{$s}//; print "#F[1,2] $_"'
Perl version:
$ perl -v
This is perl 5, version 26, subversion 2 (v5.26.2) built for MSWin32-x64-multi-thread
That is a command for the Bourne shell (sh) or similar, but you gave it to the Windows shell (cmd) to execute. Execute the command using sh or similar (whether cygwin-built or otherwise) to get rid of the error.
By the way, you were using a Windows build of Perl (MSWin32-x64 arch), not a cygwin build of Perl (cygwin arch). That's not the cause of the error, as the program will run fine either way. That said, this "issue" will surely go away once you use a cygwin-built sh or similar to execute the command.
Is there any specifier to tell Perl interpreter that the real Perl scripts starts at some line, then the output will have correct line number from interpreter, like interpret error message? For example, the line number information in below script is incorrect.
#perl -x "%~f0" %*
#exit /b %errorlevel%
#!perl
use strict;
printxxx "Perl Script\n"; # interpreter will output error for this line with **incorrect line number**
You can use the line directive, which is a special form of comment that looks like # line 99 and dictates the line number that perl will assign to the following line.
For instance
#!/usr/bin/perl
use strict;
use warnings;
use 5.010;
STDOUT->autoflush;
# line 100
say "line ". __LINE__;
die;
output
line 100
Died at E:\Perl\source\line.pl line 101.
It is also possible to add a filename after the line number, which similarly dictates the source file name that perl will report.
I'm trying to install POE::Component:IRC::State but keep returning this error. I've tried googling but no solutions. Anyone know how to handle this?
install POE::Component:IRC::State
Going to read '/home/user/.cpan/Metadata'
Database was generated on Tue, 22 Jul 2014 11:41:02 GMT
Running install for module 'POE::Component::IRC::State'
Running make for B/BI/BINGOS/POE-Component-IRC-6.88.tar.gz
Checksum for /home/user/.cpan/sources/authors/id/B/BI/BINGOS/POE-Component-IRC-6.88.tar.gz ok
Scanning cache /home/user/.cpan/build for sizes
Use of uninitialized value $newdir in substitution (s///) at /opt/OMNIperl/lib/5.14/i86pc-solaris-thread-multi-64/Cwd.pm line 502.
Use of uninitialized value $newdir in chdir at /opt/OMNIperl/lib/5.14/i86pc-solaris-thread-multi-64/Cwd.pm line 510.
Use of chdir('') or chdir(undef) as chdir() is deprecated at /opt/OMNIperl/lib/5.14/i86pc-solaris-thread-multi-64/Cwd.pm line 510.
Use of uninitialized value $newdir in pattern match (m//) at /opt/OMNIperl/lib/5.14/i86pc-solaris-thread-multi-64/Cwd.pm line 525.
Use of uninitialized value $newdir in split at /opt/OMNIperl/lib/5.14/i86pc-solaris-thread-multi-64/Cwd.pm line 531.
............................................................................DONE
Use of uninitialized value $_[0] in join or string at /opt/OMNIperl/lib/5.14/i86pc-solaris-thread-multi-64/File/Spec/Unix.pm line 86.
Use of uninitialized value $path in pattern match (m//) at /opt/OMNIperl/lib/5.14/i86pc-solaris-thread-multi-64/File/Spec/Unix.pm line 267.
CPAN.pm: Going to build B/BI/BINGOS/POE-Component-IRC-6.88.tar.gz
Warning: No success on command[/opt/OMNIperl/bin/amd64/perl Makefile.PL]
BINGOS/POE-Component-IRC-6.88.tar.gz
/opt/OMNIperl/bin/amd64/perl Makefile.PL -- NOT OK
Running make test
Make had some problems, won't test
Running make install
Make had some problems, won't install
Failed during this command:
BINGOS/POE-Component-IRC-6.88.tar.gz : writemakefile NO '/opt/OMNIperl/bin/amd64/perl Makefile.PL' returned status -1
I came across something similar to this before and I believe the reason for your error, assuming you are receiving this error for other modules installations as well*, is that you need to update your current version of Perl.
From your error report it seems that you are running 5.14 but you should be running 5.20 instead. If this is a remote/personal set up, you can try upgrading your version of Perl but definitely back up everything.
If this is part of a larger system, I would highly advise contacting your system administrator and asking them to look into the problem and have them upgrade it. It is a very sensitive action and upgrading can affect a bunch of other programs you have on your servers.