Docker GELF是將Docker容器日志轉(zhuǎn)發(fā)到Graylog的一種方式。GELF代表Graylog Extended Log Format,是一種JSON格式的日志記錄方式,可以輕松地與Graylog進(jìn)行集成。Docker GELF需要使用一個(gè)log驅(qū)動(dòng)程序,并將其配置為將日志發(fā)送到Graylog服務(wù)器。
docker run --log-driver=gelf --log-opt gelf-address=udp://graylog.example.com:12201 myimage
這將啟動(dòng)一個(gè)新的Docker容器,并將容器中的所有日志發(fā)送到Graylog服務(wù)器。其中g(shù)elf-address參數(shù)指定Graylog服務(wù)器的地址和端口號(hào)。如果需要,可以添加額外的參數(shù)以自定義GELF格式。
以下是一個(gè)完整的示例Docker Compose文件,它使用Docker GELF將所有容器的日志發(fā)送到Graylog服務(wù)器。
version: "3"
services:
app:
image: myimage
logging:
driver: gelf
options:
gelf-address: "udp://graylog.example.com:12201"
tag: "myapp"
db:
image: mysql
logging:
driver: gelf
options:
gelf-address: "udp://graylog.example.com:12201"
tag: "mysqldb"
在此示例中,我們定義兩個(gè)服務(wù):一個(gè)應(yīng)用程序服務(wù)和一個(gè)數(shù)據(jù)庫(kù)服務(wù)。每個(gè)服務(wù)使用Docker GELF將其日志發(fā)送到Graylog服務(wù)器,并使用不同的標(biāo)記來(lái)區(qū)分它們。這可以幫助我們更輕松地在Graylog中過(guò)濾和分析日志。
使用Docker GELF可以幫助我們更好地分析Docker容器的日志,并更快地解決問(wèn)題。它與Graylog的集成非常簡(jiǎn)單,并且可以與任何類(lèi)型的Docker容器一起使用。