如何从Dockerized Node应用程序中将应用程序日志发送到Elasticsearch?

时间:2016-11-27 05:28:08

标签: node.js docker elastic-stack bunyan

我有一个小node脚本,其中我使用bunyan来处理应用程序日志记录。记录器写入本地存储。我想使用elasticsearch将日志发送到filebeat(这两个对我来说都是新技术)。

我已经制作了一个dockerfile容纳应用程序(如下),但我不确定如何/在何处插入必要的说明。有没有办法将我的日志从elasticsearch内发送到docker?虽然我在这里,但也发送docker container& os发出?

# dockerfile. 
# installations and entrypoint are to run nightmarejs headless
FROM node:latest

RUN apt-get update &&\
    apt-get install -y libgtk2.0-0 libgconf-2-4 \
    libasound2 libxtst6 libxss1 libnss3 xvfb

WORKDIR /app
COPY ./dist .

# enable installation of private npm modules
ARG NPM_TOKEN  
COPY .npmrc .npmrc  
COPY package.json .
RUN npm i
RUN rm -f .npmrc
COPY entrypoint /
RUN chmod +x /entrypoint
ENTRYPOINT ["/entrypoint"]

CMD DEBUG=nightmare node ./app.js

完整性'为了entrypoint.js

#!/usr/bin/env bash
set -e

# Start Xvfb
Xvfb -ac -screen scrn 1280x2000x24 :9.0 &
export DISPLAY=:9.0

exec "$@"

如果重要的话,我会将容器部署到我不会ssh访问操作系统的服务中。

[ETA:很多答案已经涵盖了如何从容器的外部获取docker日志 - 例如,在单独的容器中运行filebeat。我希望在同一个容器中运行,但是

0 个答案:

没有答案