Hi JF,

On Mon, Nov 09, 2009 at 10:26:35AM -0500, JF Cliche wrote:

> In any case, I cleaned- up my config file and made sure I filter
> nothing (see config below). I rechecked pmacctd using the memory
> plugin and data is being gathered. Then I relaunched with the sqlite3
> plugin. 'pmacct -s' still generate an error: the pipe file is not
> created. And a large number of sqlite3 writer processes are created.

The "pmacct" client tool is only useful to interact with the memory
plugin; when you are using only the sqlite3 plugin, it tries to see
if a memory plugin is listening on the pipe file - but nothing is
there and hence it triggers the error. I would say this is all OK.

> ...
> ( in/sqlite3 ) *** Purging cache - START ***
> ( in/sqlite3 ) *** Purging cache - END (QN: 0, ET: 0) ***
> WARN ( in/sqlite3 ): Maximum number of SQL writer processes reached (10).
> ( in/sqlite3 ) *** Purging cache - START ***
> ( in/sqlite3 ) *** Purging cache - END (QN: 0, ET: 0) ***
> ...

Now, this part is interesting. As you said, writer processes seem to
not be replenished - while they should be shortly after each "END"
debug message you see above; and also it seems the writer process is
unable to dump the SQL cache content into the database (as the query
number, "QN", stays at zero while you produce some traffic; moreover
such traffic is reaching the sqlite3 plugin no problems as you can get
the buffering error "ERROR ( in/sqlite3 ): We are missing data" from
the plugin). 

To rule out some configuration issue, i've copy/pasted your config
on a testbed - and i see it working fine. This and the fact that the
memory plugin works fine (it has a different way of working compared
the SQL plugins) suggests me the issue could be at a lower level.

I can propose some solutions: 1) allow me to troubleshoot the issue;
this would require an access to the NAS (and feel free to bring this
over privately); 2) if the above is not possible a clean alternative
might be let pmacct to write to a remote SQL database, either MySQL
or PostgreSQL; it has to be checked you don't run in the same SQLite
issue first; 3) check whether what you want to achieve, can be done
with the memory plugin.

Cheers,
Paolo


_______________________________________________
pmacct-discussion mailing list
http://www.pmacct.net/#mailinglists

Reply via email to