[sheepdog] [PATCH v2 1/4] logger: add a mechanism for initializing log file with user specified callbacks
Liu Yuan
namei.unix at gmail.com
Tue Feb 5 05:55:50 CET 2013
On 02/05/2013 12:17 PM, Hitoshi Mitake wrote:
> At Tue, 05 Feb 2013 11:01:57 +0800,
> Liu Yuan wrote:
>>
>> On 02/05/2013 10:49 AM, Hitoshi Mitake wrote:
>>> After applying this patch, a first log line produced by sheep will be
>>> like this:
>>> { "type": 0, "header": { "program": "sheep", "pid": 2500, "port":
>>> 7000} }
>>
>> I think we'd better print the information necessary. So I guess you only
>> need "port" field.
>>
>> isn't it simpler for json_formatter to inline "port" into every log
>> message? Then I guess both sheep and json_log_viewer.py will get
>> simplified a lot.
>>
>
> Currently json_log_viewer.py is an only user of JSON format. But we
> can write other scripts which want logs to be formatted in JSON. And
> they might want pid or other information which is not included in
> current header.
>
> So I believe current header + successor format is suitable.
>
I still insisting on the 'on-demand' design that only do the necessary
things as much as possible. Json viewer is the only users and probably
in a long time it is still the sole user. We can't afford to trade the
complexity added to the logger for the future needs which isn't
predicted clearly yet for now.
Inlining the field instead of adding a header looks stupid, but it works
and doesn't require any viewer to write extra header parser.
Thanks,
Yuan
More information about the sheepdog
mailing list