On Monday, November 15, 2010, Lars Ellenberg wrote:
> On Mon, Nov 15, 2010 at 03:42:21PM +0100, Bernd Schubert wrote:
> > On Friday, November 12, 2010, Lars Ellenberg wrote:
> > > On Fri, Nov 12, 2010 at 05:04:41PM +0100, bs_li...@aakef.fastmail.fm 
wrote:
> > /* Messages sent to the logging daemon */
> > #define     LD_LOGIT        2
> > #define MAXENTITY   32
> > 
> > 
> > I don't think there is a risk to get above that. But I have no objections
> > to increase it.
> 
> No, I don't think we can do that: as long as we use syslog,
> we cannot simply change its settings for entity size.


void openlog(const char *ident, int option, int facility);
void syslog(int priority, const char *format, ...);


I don't find anything about a size limit of "const char *ident" in "man 3 
syslog". Do you have more information?

> 
> > As I wrote in the patch comment, filter rules based on localX are not
> > optimal and filtering on "localX *and* a-single-word" does not work, as
> > there is no common-log entity so far (I always found that quite
> > annoying).
> 
> I well understand the current complications of syslog filtering,
> and think too that we should improve things.
> 
> My question was more like this:
> 
> we have:
> Nov 14 06:39:37 barkeeper1 pengine: [5724]: info: determine_online_status:
> Node barkeeper1 is online
> 
> A)
>    You change that by prepending $cl_log_entity to entity:
>    Nov 14 06:39:37 barkeeper1 $cl_log_entity pengine: [5724]: info:
> determine_online_status: Node barkeeper1 is online
> 
>    where "$cl_log_entity pengine" is the "entity" in syslog speak,
>    and must stay below 32 characters (ok, 31, probably).
> 
> B)
>    We could instead keep our entity as syslog entity as is,
>    and insert $cl_log_entity at either 1,2 or 3 in the message part:
>    1) before the pid, which is generated as part of the message by us
> anyways, 2) before the pristr, or
>    3) between pristr and message
>    Nov 14 06:39:37 barkeeper1 pengine: [5724]: info:
> determine_online_status: Node barkeeper1 is online ^1     ^2    ^3
> 
> C)
>    Or even just
>    log cl_log_entity as syslog entity,
>    and move "our" entity before its [pid] into the message, like so:
>    Nov 14 06:39:37 barkeeper1 $cl_log_entity: pengine[5724]: info:
> determine_online_status: Node barkeeper1 is online
> 
>    where now only "$cl_log_entity" is the syslog entity.  Maybe rename our
>    entity to subsystem, or some such, to avoid further misunderstandings.
> 
> I think I like this last one best, btw ;-)

I also think so, it just makes a it a bit more difficult to implement the 
"none" option.

> 
> For the log files written by logd, it does not make much difference.

I even didn't add $cl_log_entity to those, as for those it is clear anyway 
where they come from and as nothing else writes to it.

> 
> For possibly database backed syslog derivatives,
> or filters, it makes a difference.
> 
> As we likely break existing filtering setups anyways with any of these
> suggestions, we can just as well try to get it right this time.

Any chance we can decide on the final format as soon as possible? I have 5 
working days for DDN left until end of November and also still need to 
document a lot and push Lustre and ext4 patches upstream ;)


Thanks,
Bernd



_______________________________________________________
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/

Reply via email to