mozilla / fxa-auth-server

DEPRECATED - Migrated to https://github.com/mozilla/fxa
Mozilla Public License 2.0
399 stars 108 forks source link

ensure that uid is set in log messages (even if it uid "unknown") for heka processing of ADI #755

Closed jrgm closed 10 years ago

jrgm commented 10 years ago

When we had that little incident on Jul 10 for auth-server, heka choked on log messages that had no uid field on path /v1/certificate/sign. We should make sure that the uid exists even in error cases (and set uid to some negative number?).

@whd can you provide an example broken message?

jrgm commented 10 years ago

@whd would like it so that the default/backstop uid value be such that it can be distinguished between cases where not having a UID is ok (request not needing auth) vs. a request where auth is required but the uid could not be determined.

whd commented 10 years ago

This is an example broken message:

Timestamp: 2014-07-09 23:46:52.256 +0000 UTC
Type: request.summary
Hostname: hostname
Pid: 1234
UUID: e179d273-4421-4fed-ab9b-f72e4243e4ad
Logger: FxaAuth
Payload:
EnvVersion: 0
Severity: 7
Fields: [name:"remoteAddressChain" value_string:"IP" value_string:"IP" value_string:"127.0.0.1"  name:"path" value_string:"/v1/certificate/sign"  name:"code" value_type:DOUBLE value_double:200  name:"errno" value_type:DOUBLE value_double:0  name:"msg" value_string:""  name:"user_agent_os" value_string:"Windows 8.1"  name:"user_agent_version" value_type:DOUBLE value_double:30  name:"user_agent_browser" value_string:"Firefox"  name:"name" value_string:"fxa-auth-server"  name:"t" value_type:DOUBLE value_double:170  name:"rid" value_string:"1404949612086-2457-20264"  name:"lang" value_string:"sv"  name:"level" value_type:DOUBLE value_double:30 ] 
dannycoates commented 10 years ago

"default" uid is '00'

uid value be such that it can be distinguished between cases where not having a UID is ok (request not needing auth) vs. a request where auth is required but the uid could not be determined.

The errno signals when a uid is required but not provided.