Opened 10 months ago

Last modified 10 months ago

#29364 new enhancement

Tone down [WARN] log messages resulting from meek-client output

Reported by: dcf Owned by: dcf
Priority: Medium Milestone:
Component: Circumvention/meek Version:
Severity: Minor Keywords:
Cc: ahf, dgoulet, cohosh, brade, mcs Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Since #28179, tor logs any output from managed proxies' stderr at the WARN level. So meek-client's log messages like

2019/02/07 08:12:22 listening on 127.0.0.1:39071

that formerly went into a black hole, now get logged by tor as

2/7/19, 08:12:22.657 [WARN] Managed proxy at './TorBrowser/Tor/PluggableTransports/meek-client' reported: 2019/02/07 08:12:22 listening on 127.0.0.1:39071

The only real problem here is one of user interface. Being logged at WARN level causes the ⚠️ to pop up in Tor Launcher, when this is not something that requires user attention at all.

May affect other transports.

Child Tickets

Change History (4)

comment:1 Changed 10 months ago by ahf

Shouldn't this be solved by making the log messages output the LOG message instead of writing to standard error?

comment:2 Changed 10 months ago by mcs

Cc: brade mcs added

comment:3 in reply to:  1 Changed 10 months ago by dcf

Replying to ahf:

Shouldn't this be solved by making the log messages output the LOG message instead of writing to standard error?

No, not necessarily; for example meek-client has a --log option to write the log to a file instead of stderr. We want that to still work.

More generally, in my opinion the PT LOG mechanism is not meant to be a full replacement for application-level logging. I don't think everything a PT might care to log should be written by default to the tor log.

Also, remember that tor is not the only consumer of PTs. The LOG feature is brand new, not even documented yet in the public pt-spec.txt, and barely in any released versions of tor. It's not something PTs can widely rely on to be present yet (especially as older versions of tor will deadlock if a PT uses LOG too much!).

In this particular case, clearly, the defaults are bad and something needs to change, because we should not be surfacing a user-visible warning. It's not necessarily tor's responsibility to fix it, but it could be. I'm not sure that WARN-by-default is the right choice: it's enforcing a contract on PTs that never existed before, and also isn't reflected in the spec. In this case, meek-client doesn't write that much to stderr, so making a change in meek-client is probably the sensible thing to do.

comment:4 Changed 10 months ago by ahf

We do have the option of lowering the log level of the standard error handler in Tor if we feel like that is the best option.

Note: See TracTickets for help on using tickets.