[openstack-dev] Log Rationalization -- Bring it on!
John Dickinson
me at not.mn
Thu Sep 18 03:48:55 UTC 2014
On Sep 17, 2014, at 8:43 PM, Jay Faulkner <jay at jvf.cc> wrote:
> Comments inline.
>
>> -----Original Message-----
>> From: Monty Taylor [mailto:mordred at inaugust.com]
>> Sent: Wednesday, September 17, 2014 7:34 PM
>> To: openstack-dev at lists.openstack.org
>> Subject: Re: [openstack-dev] Log Rationalization -- Bring it on!
>>
>> On 09/17/2014 04:42 PM, Rochelle.RochelleGrober wrote:
>>> TL;DR: I consider the poor state of log consistency a major
>>> impediment for more widespread adoption of OpenStack and would like to
>>> volunteer to own this cross-functional process to begin to unify and
>>> standardize logging messages and attributes for Kilo while dealing
>>> with the most egregious issues as the community identifies them.
>>>
>>
>> I fully support this, and I, for one, welcome our new log-standardization
>> overlords.
>>
>
> Something that could be interesting is to see if we can emit metrics everytime a loggable event happens. There's already a spec+code being drafted for Ironic in Kilo (https://review.openstack.org/#/c/100729/ &https://review.openstack.org/#/c/103202/) that we're using downstream to emit metrics from Ironic.
You may be interested to see how Swift has integrated StatsD events into a log adapter.
https://github.com/openstack/swift/blob/master/swift/common/utils.py#L1197
See also the StatsdClient class in that same file.
--John
>
> If we have good organization of logging events, and levels, perhaps there's possibly a way to make it easy for metrics to be emitted at that time as well.
>
> -
> Jay Faulkner
>
>>
>>>
>>> Recap from some mail threads:
>>>
>>>
>>>
>>> From Sean Dague on Kilo cycle goals:
>>>
>>> 2. Consistency in southbound interfaces (Logging first)
>>>
>>>
>>>
>>> Logging and notifications are south bound interfaces from OpenStack
>>> providing information to people, or machines, about what is going on.
>>>
>>> There is also a 3rd proposed south bound with osprofiler.
>>>
>>>
>>>
>>> For Kilo: I think it's reasonable to complete the logging standards
>>> and implement them. I expect notifications (which haven't quite kicked
>>> off) are going to take 2 cycles.
>>>
>>>
>>>
>>> I'd honestly *really* love to see a unification path for all the the
>>> southbound parts, logging, osprofiler, notifications, because there is
>>> quite a bit of overlap in the instrumentation/annotation inside the
>>> main code for all of these.
>>>
>>>
>>> And from Doug Hellmann: 1. Sean has done a lot of analysis and started
>>> a spec on standardizing logging guidelines where he is gathering input
>>> from developers, deployers, and operators [1].
>>> Because it is far enough for us to see real progress, it's a good
>>> place for us to start experimenting with how to drive cross-project
>>> initiatives involving code and policy changes from outside of a single
>>> project. We have a couple of potentially related specs in Oslo as part
>>> of the oslo.log graduation work [2] [3], but I think most of the work
>>> will be within the applications.
>>>
>>> [1] https://review.openstack.org/#/c/91446/ [2]
>>> https://blueprints.launchpad.net/oslo.log/+spec/app-agnostic-logging-p
>>> arameters
>>>
>>>
>> [3] https://blueprints.launchpad.net/oslo.log/+spec/remove-context-
>> adapter
>>>
>>>
>>>
>>> And from James Blair:
>>>
>>> 1) Improve log correlation and utility
>>>
>>>
>>>
>>> If we're going to improve the stability of OpenStack, we have to be
>>> able to understand what's going on when it breaks. That's both true
>>> as developers when we're trying to diagnose a failure in an
>>> integration test, and it's true for operators who are all too often
>>> diagnosing the same failure in a real deployment. Consistency in
>>> logging across projects as well as a cross-project request token would
>>> go a long way toward this.
>>>
>>> While I am not currently managing an OpenStack deployment, writing
>>> tests or code, or debugging the stack, I have spent many years doing
>>> just that. Through QA, Ops and Customer support, I have come to revel
>>> in good logging and log messages and curse the holes and vagaries in
>>> many systems.
>>>
>>> Defining/refining logs to be useful and usable is a cross-functional
>>> effort that needs to include:
>>>
>>> · Operators
>>>
>>> · QA
>>>
>>> · End Users
>>>
>>> · Community managers
>>>
>>> · Tech Pubs
>>>
>>> · Translators
>>>
>>> · Developers
>>>
>>> · TC (which provides the forum and impetus for all the
>>> projects to cooperate on this)
>>>
>>> At the moment, I think this effort may best work under the auspices of
>>> Oslo (oslo.log), I'd love to hear other proposals.
>>>
>>> Here is the beginnings of my proposal of how to attack and subdue the
>>> painful state of logs:
>>>
>>>
>>> · Post this email to the MLs (dev, ops, enduser) to get
>>> feedback, garner support and participants in the process (Done;-)
>>>
>>> · In parallel:
>>>
>>> o Collect up problems, issues, ideas, solutions on an etherpad
>>> https://etherpad.openstack.org/p/Log-Rationalization where anyone in
>>> the communities can post.
>>>
>>> o Categorize reported Log issues into classes (already identified
>>> classes):
>>>
>>> § Format Consistency across projects
>>>
>>> § Log level definition and categorization across classes
>>>
>>> § Time syncing entries across tens of logfiles
>>>
>>> § Relevancy/usefulness of information provided within messages
>>>
>>> § Etc (missing a lot here, but I'm sure folks will speak up)
>>>
>>> o Analyze existing log message formats, standards across integrated
>>> projects
>>>
>>> o File bugs where issues identified are actual project bugs
>>>
>>> o Build a session outline for F2F working session at the Paris
>>> Design Summit
>>>
>>> · At the Paris Design Summit, use a session and/or pod
>>> discussions to set priorities, recruit contributors, start and/or
>>> flesh out specs and blueprints
>>>
>>> · Proceed according to priorities, specs, blueprints,
>>> contributions and changes as needed as the work progresses.
>>>
>>> · Keep an active and open rapport and reporting process for
>>> the user community to comment and participate in the processes.
>>> Measures of success:
>>>
>>> · Log messages provide consistency of format enough for
>>> productive mining through operator writable scripts
>>>
>>> · Problem debugging is simplified through the ability to
>>> trust timestamps across all OpenStack logs (and use scripts to get to
>>> the time you want in any/all of the logfiles)
>>>
>>> · Standards for format, content, levels and translations have
>>> been proposed and agreed to be adopted across all OpenStack integrated
>>> projects
>>>
>>> · The user communities demonstrate an increased level of
>>> trust and decreased level of frustration with OpenStack logging
>>> (surveys, bug reports, other measures?)
>>>
>>> · The log team can disband
>>>
>>> I expect that getting the logs in very good shape will take more than
>>> just the Kilo timeframe, but once momentum has built, which should
>>> happened during Kilo, the process should move very quickly. A lot of
>>> this could be handled through "while you're in there" or "low hanging
>>> fruit" once the standards are established. The bigger win will be if
>>> we can ensure what we define/design is extensible over the longer life
>>> of OpenStack.
>>>
>>> --Rocky
>>>
>>>
>>>
>>>
>>> _______________________________________________ OpenStack-
>> dev mailing
>>> list OpenStack-dev at lists.openstack.org
>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>>>
>>
>>
>> _______________________________________________
>> OpenStack-dev mailing list
>> OpenStack-dev at lists.openstack.org
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140917/155ddcd2/attachment.pgp>
More information about the OpenStack-dev
mailing list