protected void waitForLog(String messageToMatch) throws DockerException, InterruptedException, UnsupportedEncodingException { LogStream logs = dockerClient.logs(container.id(), follow(), stdout()); String log; do { LogMessage logMessage = logs.next(); ByteBuffer buffer = logMessage.content(); byte[] bytes = new byte[buffer.remaining()]; buffer.get(bytes); log = new String(bytes); } while (!log.contains(messageToMatch)); } }
final LogStream logs = client.logs(containerId, follow(), stdout(), stderr()); while (logs.hasNext()) { if (Thread.interrupted()) {
@Override public Void call() throws Exception { log.trace("{} attaching to logs", containerShortId); LogStream logs = dockerClient.logs(containerId, LogsParam.stdout(), LogsParam.stderr(), LogsParam.follow()); try { logs.attach(logSplitter.getStdoutOutput(), logSplitter.getStderrOutput()); } finally { IOUtils.closeQuietly(logs, logSplitter); log.trace("{} dettached from logs", containerShortId); } return null; } });
/** * Return stream. * * @return LogsParam */ public static LogsParam follow() { return follow(true); }
/** * Return stream. * * @return LogsParam */ public static LogsParam follow() { return follow(true); }