Reading Application Logs on Google App Engine from Developer Console

Posted on

Question :

Reading Application Logs on Google App Engine from Developer Console

Reading and Writing Application Logs discusses the difference between Request logs vs application logs.

In running on App Engine I import logging and grab a logger (since it’s named, options_log, I’m not using root logger):

import logging

log = logging.getLogger('options_log')
...'Hello Log!')

I can’t find any information on where to view my application logs in the Developer Console. I see only request_log and activity.

enter image description here

The request_log contains logging from, but how do I log to application log and not request_log?

Asked By: Jack


Answer #1:

You don’t need to set the logger options, just importing the logging module and invoking its functions should suffice, just like the in examples on the page you referenced:

import logging

import webapp2

class MainPage(webapp2.RequestHandler):
    def get(self):
        logging.debug('This is a debug message')'This is an info message')

You should also note that the application logs can not be seen independently, they are always attached to the request log for the request in response to which they were produced. From the doc you referenced:

Each request log contains a list of application logs (AppLog)
associated with that request, returned in the RequestLog.app_logs
property. Each app log contains the time the log was written, the log
message, and the log level.

Note: A request log can only hold 1000 app logs. If you add more than 1000,
the older logs will not be retained.

You need to click on the left-most caret to expand the request log entry to display the respective app log(s):

enter image description here

If after expanding the request log you still don’t see your app logs I suspect that your attempt to set options on a specific logger – the 'options_log' one – might be your problem. If you still want to set options, try doing it for the default logger (root logger?) instead of specifying one. Or drop the options altogether.

Answered By: Dan Cornilescu

Leave a Reply

Your email address will not be published. Required fields are marked *