Would anyone have any more ideas why a perfectly normal looking Collectd whose 
config file is valid and that runs just fine would not be logging anything 
anywhere and would be saying 
"No write callback has been registered. Please load at least one output plugin, 
if you want the collected data to be stored." ?

Over the last few days I've seen this same behaviour on multiple Linux systems 
and with multiple 4.* and 5.* versions of Collectd.

Any help would be greatly appreciated!

Thank you,
Otis

 
----- Original Message -----
From: O G <[email protected]>
To: "[email protected]" <[email protected]>
Cc: 
Sent: Monday, April 23, 2012 3:00 PM
Subject: Re: [collectd] Collectd on CentOS always broken?

Hello Richard,

I have not try this before (because I need plain-text collectd log files, not 
rrd ones), but I have now and it didn't help, I still get:

"No write callback has been registered. Please load at least one output plugin, 
if you want the collected data to be stored."
 
The files I'm looking for are, for example (this is from another system):
 
$ head /opt/collectd/var/lib/collectd/cpu-0/cpu-user-2012-04-20 
epoch,value
1334880003,7.700000
1334880013,2.000000
1334880023,0.300000
 
Thanks,
Otis




________________________________
From: Richard Shade <[email protected]>
To: O G <[email protected]> 
Cc: "[email protected]" <[email protected]> 
Sent: Monday, April 23, 2012 1:37 PM
Subject: Re: [collectd] Collectd on CentOS always broken?


Have you tried adding LoadPlugin rrdtool, so that it will make rrd files? 


On Mon, Apr 23, 2012 at 12:21 PM, O G <[email protected]> wrote:

Hi,
> 
>I've removed LoadPlugin syslog just in case.  Yes, I can see Collectd is 
>running with ps:
>
># ps auxww| grep collectd
>root      1272  0.0  0.1  44464   740 ?        Ssl  17:06   0:00 
>/opt/collectd/sbin/collectd -C /opt/collectd/etc/collectd.conf
>
>Also, when I kill this process I see this in the log (/tmp/collectd.log in my 
>case), so I know Collectd really is running before I kill it:
>
>[2012-04-23 17:06:21] [info] Exiting normally.
>[2012-04-23 17:06:21] [info] collectd: Stopping 5 read threads.
>
>And when I start it, I see the following in /tmp/collectd.log:
>
>[2012-04-23 17:06:52] [info] Initialization complete, entering read-loop.
>[2012-04-23 17:06:52] [warning] plugin_dispatch_values: No write callback has 
>been registered. Please load at least one output plugin, if you want the 
>collected data to be stored.
>[2012-04-23 17:06:52] [info] Filter subsystem: Built-in target `write': 
>Dispatching value to all write plugins failed with status 2 (ENOENT). Most 
>likely this means you didn't load any write plugins.
>... the last [info] line above keeps repeating as collectd is running ...
>
>
>So this "No write callback has been registered. Please load at least one 
>output plugin, if you want the collected data to be stored" log message really 
>looks weird.
>What "output plugin" is this referring to?  I do have "LoadPlugin cpu" and 
>that should be writing CPU usage info to the log file under 
>/opt/collectd/var/lib/collectd/.
>
>Here is a part of lsof output that shows cpu and logfile plugins are loaded.  
>There is also a reference to /opt/collectd/var/lib/collectd directory that 
>should have files with Collectd data, but doesn't:
>
># lsof | grep collectd
>collectd  1272     root  cwd       DIR      202,1     4096     133804 
>/opt/collectd/var/lib/collectd
>collectd  1272     root  mem       REG      202,1    12814     133591 
>/opt/collectd/lib/collectd/cpu.so
>collectd  1272     root  mem       REG      202,1    16189     133621 
>/opt/collectd/lib/collectd/logfile.so
>...
>
>
>As for strace output, here it is:
>
>execve("/opt/collectd/sbin/collectd", ["/opt/collectd/sbin/collectd", "-C", 
>"/opt/collectd/etc/collectd.conf"], [/* 31 vars */]) = 0
>brk(0)                                  = 0x9f9a000
>mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
>0xb77a9000
>access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
>open("/etc/ld.so.cache", O_RDONLY)      = 3
>fstat64(3, {st_mode=S_IFREG|0644, st_size=18810, ...}) = 0
>mmap2(NULL, 18810, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb77a4000
>close(3)                                = 0
>open("/lib/i686/nosegneg/librt.so.1", O_RDONLY) = 3
>read(3, 
>"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\30\0\0004\0\0\0"..., 512) 
>= 512
>fstat64(3, {st_mode=S_IFREG|0755, st_size=39676, ...}) = 0
>mmap2(NULL, 33332, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
>0xb779b000
>mmap2(0xb77a2000, 8192, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6) = 0xb77a2000
>close(3)                                = 0
>open("/lib/libresolv.so.2", O_RDONLY)   = 3
>read(3, 
>"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240&\0\0004\0\0\0"..., 512) = 
>512
>fstat64(3, {st_mode=S_IFREG|0755, st_size=103384, ...}) = 0
>mmap2(NULL, 104520, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
>0xb7781000
>mprotect(0xb7796000, 4096, PROT_NONE)   = 0
>mmap2(0xb7797000, 8192, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15) = 0xb7797000
>mmap2(0xb7799000, 6216, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7799000
>close(3)                                = 0
>open("/lib/i686/nosegneg/libpthread.so.0", O_RDONLY) = 3
>read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0pL\0\0004\0\0\0"..., 
>512) = 512
>fstat64(3, {st_mode=S_IFREG|0755, st_size=131044, ...}) = 0
>mmap2(NULL, 106976, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
>0xb7766000
>mmap2(0xb777d000, 8192, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16) = 0xb777d000
>mmap2(0xb777f000, 4576, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb777f000
>close(3)                                = 0
>open("/lib/libdl.so.2", O_RDONLY)       = 3
>read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`\n\0\0004\0\0\0"..., 
>512) = 512
>fstat64(3, {st_mode=S_IFREG|0755, st_size=17892, ...}) = 0
>mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
>0xb7765000
>mmap2(NULL, 16500, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
>0xb7760000
>mmap2(0xb7763000, 8192, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0xb7763000
>close(3)                                = 0
>open("/lib/i686/nosegneg/libc.so.6", O_RDONLY) = 3
>read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@n\1\0004\0\0\0"..., 
>512) = 512
>fstat64(3, {st_mode=S_IFREG|0755, st_size=1893680, ...}) = 0
>mmap2(NULL, 1657224, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
>0xb75cb000
>mprotect(0xb7759000, 4096, PROT_NONE)   = 0
>mmap2(0xb775a000, 12288, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18e) = 0xb775a000
>mmap2(0xb775d000, 10632, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb775d000
>close(3)                                = 0
>mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
>0xb75ca000
>set_thread_area({entry_number:-1 -> 6, base_addr:0xb75ca6c0, limit:1048575, 
>seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, 
>seg_not_present:0, useable:1}) = 0
>mprotect(0xb775a000, 8192, PROT_READ)   = 0
>mprotect(0xb7763000, 4096, PROT_READ)   = 0
>mprotect(0xb777d000, 4096, PROT_READ)   = 0
>mprotect(0xb7797000, 4096, PROT_READ)   = 0
>mprotect(0xb77a2000, 4096, PROT_READ)   = 0
>mprotect(0xb77c9000, 4096, PROT_READ)   = 0
>munmap(0xb77a4000, 18810)               = 0
>set_tid_address(0xb75ca728)             = 1324
>set_robust_list(0xb75ca730, 0xc)        = 0
>futex(0xbf97ee10, FUTEX_WAKE_PRIVATE, 1) = 0
>futex(0xbf97ee10, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, 
>bf97ee20) = -1 EAGAIN (Resource temporarily unavailable)
>rt_sigaction(SIGRTMIN, {0xb776a6a0, [], SA_SIGINFO}, NULL, 8) = 0
>rt_sigaction(SIGRT_1, {0xb776ab40, [], SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
>rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
>getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
>uname({sys="Linux", node="domU-12-31-38-00-A8-F5", ...}) = 0
>brk(0)                                  = 0x9f9a000
>brk(0x9fbb000)                          = 0x9fbb000
>stat64("/opt/collectd/etc/collectd.conf", {st_mode=S_IFREG|0644, 
>st_size=24208, ...}) = 0
>open("/opt/collectd/etc/collectd.conf", O_RDONLY) = 3
>ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbf97c978) = -1 ENOTTY (Inappropriate 
>ioctl for device)
>fstat64(3, {st_mode=S_IFREG|0644, st_size=24208, ...}) = 0
>mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
>0xb77a8000
>read(3, "#\n# Config file for collectd(1)."..., 8192) = 8192
>read(3, "\tIgnoreSource \"192.168.0.1\"\n#\tSe"..., 8192) = 8192
>read(3, "queries\"\n#    Socket \"/var/run/p"..., 8192) = 7824
>read(3, "", 4096)                       = 0
>read(3, "", 8192)                       = 0
>ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbf97c978) = -1 ENOTTY (Inappropriate 
>ioctl for device)
>close(3)                                = 0
>munmap(0xb77a8000, 4096)                = 0
>open("/opt/collectd/share/collectd/types.db", O_RDONLY|O_LARGEFILE) = 3
>fstat64(3, {st_mode=S_IFREG|0644, st_size=6710, ...}) = 0
>mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
>0xb77a8000
>read(3, "absolute\t\tvalue:ABSOLUTE:0:U\napa"..., 4096) = 4096
>read(3, "nter\tvalue:DERIVE:0:U\nps_code\t\t\t"..., 4096) = 2614
>read(3, "", 4096)                       = 0
>close(3)                                = 0
>munmap(0xb77a8000, 4096)                = 0
>open("/opt/collectd/lib/collectd", 
>O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
>fcntl64(3, F_GETFD)                     = 0x1 (flags FD_CLOEXEC)
>getdents64(3, /* 194 entries */, 32768) = 6536
>lstat64("/opt/collectd/lib/collectd/logfile.so", {st_mode=S_IFREG|0755, 
>st_size=16189, ...}) = 0
>futex(0xb7764068, FUTEX_WAKE_PRIVATE, 2147483647) = 0
>open("/opt/collectd/lib/collectd/logfile.so", O_RDONLY) = 4
>read(4, 
>"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\7\0\0004\0\0\0"..., 512) 
>= 512
>fstat64(4, {st_mode=S_IFREG|0755, st_size=16189, ...}) = 0
>mmap2(NULL, 9308, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 
>0xb77a6000
>mmap2(0xb77a8000, 4096, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1) = 0xb77a8000
>close(4)                                = 0
>close(3)                                = 0
>open("/opt/collectd/lib/collectd", 
>O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
>getdents64(3, /* 194 entries */, 32768) = 6536
>lstat64("/opt/collectd/lib/collectd/cpu.so", {st_mode=S_IFREG|0755, 
>st_size=12814, ...}) = 0
>open("/opt/collectd/lib/collectd/cpu.so", O_RDONLY) = 4
>read(4, 
>"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\6\0\0004\0\0\0"..., 512) 
>= 512
>fstat64(4, {st_mode=S_IFREG|0755, st_size=12814, ...}) = 0
>mmap2(NULL, 7908, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 
>0xb77a4000
>mmap2(0xb77a5000, 4096, PROT_READ|PROT_WRITE, 
>MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0) = 0xb77a5000
>close(4)                                = 0
>close(3)                                = 0
>chdir("/opt/collectd/var/lib/collectd") = 0
>rt_sigaction(SIGCHLD, {SIG_IGN, [], 0}, NULL, 8) = 0
>clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, 
>child_tidptr=0xb75ca728) = 1325
>exit_group(0)                           = ?
>
>
>Thanks!
>Otis
>
>
>
>
>
>
>----- Original Message -----
>From: "Crowder, Travis" <[email protected]>
>To: O G <[email protected]>; "[email protected]" <[email protected]>
>Cc:
>Sent: Monday, April 23, 2012 12:25 PM
>Subject: RE: [collectd] Collectd on CentOS always broken?
>
>I don't think you can use two logs, but I am not positive on this.  You are 
>using syslog and a logfile with that config.  I am not sure which one load, or 
>if either does.
>
>What is in your /tmp/collectd.log?
>
>Do you get any errors when you configure or make?
>
>When you start collectd, are you able to verify it is still running via top or 
>ps?
>
>If there is nothing in the /tmp/collectd.log and the process isn't running 
>after you start it, can you start it with strace and post the output?
>
>-Travis
>
>-----Original Message-----
>From: [email protected] [mailto:[email protected]] On 
>Behalf Of O G
>Sent: Monday, April 23, 2012 11:17 AM
>To: [email protected]
>Subject: Re: [collectd] Collectd on CentOS always broken?
>
>Hi Travis,
> 
>Thanks for replying!  I'm using this minimalistic collectd.conf:
>####
> Hostname    "localhost"
>FQDNLookup   true
>BaseDir     "/opt/collectd/var/lib/collectd"
>PIDFile     "/opt/collectd/var/run/collectd.pid"
>PluginDir   "/opt/collectd/lib/collectd"
>TypesDB     "/opt/collectd/share/collectd/types.db"
>#Interval     10
>#Timeout      2
>#ReadThreads  5
> 
>LoadPlugin syslog
>LoadPlugin logfile
><Plugin logfile>
>        LogLevel info
>        File "/tmp/collectd.log"
>        Timestamp true
>        PrintSeverity true
></Plugin>
><Plugin syslog>
>        LogLevel info
></Plugin>
> 
>LoadPlugin cpu
>####
> 
>I've now also compiled and installed collectd 5.1.0 by hand (configure, make, 
>make install) on "Amazon Linux AMI" (something based on RedHat, it seems, 
>since it has yum) and I got the exact same error message.  So I'm starting to 
>suspect I'm doing something wrong with Collectd.
> 
>Also:
># /opt/collectd/sbin/collectd -help
>...
>Builtin defaults:
>  Config file       /opt/collectd/etc/collectd.conf
>  PID file          /opt/collectd/var/run/collectd.pid
>  Plugin directory  /opt/collectd/lib/collectd
>  Data directory    /opt/collectd/var/lib/collectd        <== nothing shows up 
>here or in /opt/collectd/var/log/ collectd 5.1.0, http://collectd.org/
> 
>I've tried starting Collectd like this:
># /opt/collectd/sbin/collectd -C /opt/collectd/etc/collectd.conf
> 
>As well we like this:
># /opt/collectd/sbin/collectdmon -c /opt/collectd/etc/collectd.conf
> 
>Any help would be greatly appreciated.
> 
>Thanks!
>Otis
> 
> 
>----- Original Message -----
>From: Travis Crowder <[email protected]>
>To: O G <[email protected]>
>Cc:
>Sent: Sunday, April 22, 2012 1:21 PM
>Subject: Re: [collectd] Collectd on CentOS always broken?
>
>On 4/21/2012 11:25 PM, O G wrote:
>> Hello,
>>   Is there a version of CentOS with a working Collectd?
>> I have tried several CentOS 5.* and 6.* versions where I installed Collectd 
>> with yum install collectd and each of them had a non-working Collectd.
>>   This is a common error message I'd find in /var/log/messages:
>>   Filter subsystem: Built-in target `write': Dispatching value to all
>>write plugins failed with status 2 (ENOENT). Most likely this means you
>>didn't load any write plugins
>>   Of course, there were plugins in collectd.conf that write stuff to 
>>filesytem.
>>     Is there a version of CentOS with a working Collectd?
>>   Thanks,
>> Otis
>>
>> _______________________________________________
>> collectd mailing list
>> [email protected]
>> http://mailman.verplant.org/listinfo/collectd
>
>I use Collectd exclusively on CentOS servers; CentOS 5 and CentOS 6.  I 
>install via YUM and build from source without issue.
>
>Can you post your collectd.conf from /etc/ or /opt/collectd/etc ?
>
>-Travis
>
>_______________________________________________
>collectd mailing list
>[email protected]
>http://mailman.verplant.org/listinfo/collectd
>
>_______________________________________________
>collectd mailing list
>[email protected]
>http://mailman.verplant.org/listinfo/collectd
>


-- 
Thanks, 

Richard Shade
Integration Engineer
RightScale - http://www.rightscale.com/
phone: 8055004164x1018    

_______________________________________________
collectd mailing list
[email protected]
http://mailman.verplant.org/listinfo/collectd

_______________________________________________
collectd mailing list
[email protected]
http://mailman.verplant.org/listinfo/collectd

Reply via email to