open-nomad/plugins
Mahmood Ali 0b7085ba3a driver: allow disabling log collection
Operators commonly have docker logs aggregated using various tools and
don't need nomad to manage their docker logs.  Worse, Nomad uses a
somewhat heavy docker api call to collect them and it seems to cause
problems when a client runs hundreds of log collections.

Here we add a knob to disable log aggregation completely for nomad.
When log collection is disabled, we avoid running logmon and
docker_logger for the docker tasks in this implementation.

The downside here is once disabled, `nomad logs ...` commands and API
no longer return logs and operators must corrolate alloc-ids with their
aggregated log info.

This is meant as a stop gap measure.  Ideally, we'd follow up with at
least two changes:

First, we should optimize behavior when we can such that operators don't
need to disable docker log collection.  Potentially by reverting to
using pre-0.9 syslog aggregation in linux environments, though with
different trade-offs.

Second, when/if logs are disabled, nomad logs endpoints should lookup
docker logs api on demand.  This ensures that the cost of log collection
is paid sparingly.
2019-12-08 14:15:03 -05:00
..
base Update ugorji/go to latest 2019-05-09 19:35:58 -04:00
device Regenerate Proto files (#5421) 2019-03-14 10:56:27 -04:00
drivers driver: allow disabling log collection 2019-12-08 14:15:03 -05:00
shared fix plugin launcher SetConfig msgpack params (#6776) 2019-11-26 10:49:22 -05:00
serve.go plugins: Add support for serving driver plugins 2018-12-01 17:30:54 +01:00