From: Pat O'B. <obr...@gm...> - 2011-07-30 03:33:48
|
collectd appears to have it's config file set up to read "quasi-xml", which is causing etch to fail when parsing it for a local request: Local request file /var/etch/requests/data/svc/collectd/etc/collectd.conf/from_etch is not valid XML and will be ignored: #<REXML::ParseException: malformed XML: missing tag start Line: Position: Last 80 unconsumed characters: <Plugin "tail"> <File "/data/svc/mule/instance01/logs/log4j.log"> Instance > ... here is what the config bit looks like: <Plugin "tail"> <File "/data/svc/app/logs/log4j.log"> Instance "westcoast" <Match> Regex "ERROR" DSType "CounterInc" Type "derive" Instance "instance_errors" </Match> </File> </Plugin> Running this through other XML verifiers also verifies that this is not valid XML. One problem I noticed is that any invalid XML (or XML like file, including HTML and ERB included) in the local requests directory will cause etch to bail when slurping in to add the contents to @local_requests. Initially I thought it was just REXML bailing on loading the local request and rejecting it, but it looks like it is etch itself which is bailing (although it's completely possible that REXML would bail in the script itself as well since REXML validates XML when it loads it). Any thoughts on where to go from here? Is there an XML tag that allows free form text and ignores all formatting of data within the tag end and the tag begin? I'll also dig through collectd and see if I can make the config proper XML as well. -pat |