Uploaded image for project: 'Request For Comments'
  1. Request For Comments
  2. RFC-402

lsst.log should default to stdout

    Details

      Description

      Currently, lsst.log sends all output to stderr. This is surprising since most log messages are not errors: generally only actual errors (e.g. python exceptions, stack traces) should be sent to stderr.

      lsst.log should send all output to stdout. This helps separate logs and errors when piping output; for example, in python:

      subprocess.check_call(['jointcal.py', *args], stdout=open('jointcal.log', 'w'), stderr=open('log.err','w))
      

      I might also suggest that errors at warn, error, and fatal levels also get sent to stderr, so they're more easily identified, though that would result in them being duplicated when logging to a terminal. I'm not sure we want them to only go to stderr, as that pulls them out of context, but they can get drowned in all the other messages.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Parejkoj John Parejko
                Reporter:
                Parejkoj John Parejko
                Watchers:
                Andy Salnikov, John Parejko, Joshua Hoblitt, Kian-Tat Lim, Krzysztof Findeisen, Paul Price, Robert Lupton
              • Votes:
                0 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Planned End:

                  Summary Panel