[prev in list] [next in list] [prev in thread] [next in thread] 

List:       python-announce-list
Subject:    Eliot 0.7: Logging for complex and distributed systems
From:       Itamar Turner-Trauring <itamar () clusterhq ! com>
Date:       2015-04-28 20:56:01
Message-ID: CAJxVWe9p=MhDCqmggpg8OewS67nDSr3My3_VWp=SK8e4GNhjKA () mail ! gmail ! com
[Download RAW message or body]

Imagine you have a client that sends a request to a server and gets back a
500 error. What caused it? If you're using Eliot you can trace the logs
across processes:

$ cat server.log client.log | python eliottree.py
e076ca50-9abc-44b2-95d8-85cf6956bc33
    +-- main@1/started
        |-- process: client
        `-- timestamp: 2015-04-28 16:50:00.379033
    +-- eliot:remote_task@2,2,1/started
        |-- process: server
        `-- timestamp: 2015-04-28 16:50:00.389533
        +-- http_request@2,1/started
            |-- process: client
            |-- timestamp: 2015-04-28 16:50:00.379096
            |-- x: 8
            `-- y: 0
        +-- divide@2,2,2,1/started
            |-- process: server
            |-- timestamp: 2015-04-28 16:50:00.389674
            |-- x: 8
            `-- y: 0
            +-- divide@2,2,2,2/failed
                |-- exception: exceptions.ZeroDivisionError
                |-- process: server
                |-- reason: integer division or modulo by zero
                `-- timestamp: 2015-04-28 16:50:00.389724
            +-- eliot:remote_task@2,2,3/failed
                |-- exception: exceptions.ZeroDivisionError
                |-- process: server
                |-- reason: integer division or modulo by zero
                `-- timestamp: 2015-04-28 16:50:00.389750
        +-- http_request@2,3/failed
            |-- exception: requests.exceptions.HTTPError
            |-- process: client
            |-- reason: 500 Server Error: INTERNAL SERVER ERROR
            `-- timestamp: 2015-04-28 16:50:00.396112
    +-- main@3/failed
        |-- exception: requests.exceptions.HTTPError
        |-- process: client
        |-- reason: 500 Server Error: INTERNAL SERVER ERROR
        `-- timestamp: 2015-04-28 16:50:00.396181

Intrigued? Learn more at https://eliot.readthedocs.org.

eliottree.py is an add-on utility for formatting Eliot logs, and can be
found at https://github.com/jonathanj/eliottree
-- 
https://mail.python.org/mailman/listinfo/python-announce-list

        Support the Python Software Foundation:
        http://www.python.org/psf/donations/
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic