[
https://issues.apache.org/jira/browse/MESOS-4137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15068744#comment-15068744
]
Timothy Chen commented on MESOS-4137:
-------------------------------------
commit d01585f1b312ffbe3c17f69d4c37d8e2375f9409
Author: Joseph Wu <[email protected]>
Date: Mon Dec 21 16:54:11 2015 -0800
Changed Docker::run to take Subprocess::IO instead of Option<string>.
This changes the FDs used by the `mesos-docker-executor` to inherit rather
than open anew.
In the `mesos-docker-executor`, we originally passed the log file path
(i.e. `path::join(sandboxDirectory, "stdout")`) as an argument to
`Docker::run`. In the executor's context, the log file is already open as
`STDOUT_FILENO`.
By inheriting the FD, the docker containerizer's logging-code will path
mirrors that of the mesos containerizer.
Review: https://reviews.apache.org/r/41560/
> Modularize plain-file logging for executor/task logs launched with the Docker
> Containerizer
> -------------------------------------------------------------------------------------------
>
> Key: MESOS-4137
> URL: https://issues.apache.org/jira/browse/MESOS-4137
> Project: Mesos
> Issue Type: Task
> Components: docker, modules
> Reporter: Joseph Wu
> Assignee: Joseph Wu
> Labels: logging, mesosphere
>
> Adding a hook inside the Docker containerizer is slightly more involved than
> the Mesos containerizer.
> Docker executors/tasks perform plain-file logging in different places
> depending on whether the agent is in a Docker container itself
> || Agent || Code ||
> | Not in container | {{DockerContainerizerProcess::launchExecutorProcess}} |
> | In container | {{Docker::run}} in a {{mesos-docker-executor}} process |
> This means a {{ContainerLogger}} will need to be loaded or hooked into the
> {{mesos-docker-executor}}. Or we will need to change how piping in done in
> {{mesos-docker-executor}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)