Mbd*_*ded 5 logging grep docker
我有一个容器,该容器在日志中有时会写一个对我来说很重要的关键字,我想在终端中用彩色突出显示该单词,但重要的是仍要实时查看所有内容日志(-跟随)。我刚试过命令
docker logs -f my_app --tail=100 | grep --color -E '^myWord'
Run Code Online (Sandbox Code Playgroud)
但不起作用。
因此,存在一些执行此操作的方法吗?
尝试这个。
docker logs -f my_app --tail=100 | grep --color=always -E '^myWord'
Run Code Online (Sandbox Code Playgroud)
注意“ --color = always ”参数。
另一种选择是使用https://github.com/jlinoff/colorize之类的东西。我写这篇文章是专门针对这种情况的。例如,它可以为每种图案指定不同的颜色(有关详细信息,请参见帮助)。
这是一个如何在您的情况下使用它的示例。
$ curl -L https://github.com/jlinoff/colorize/releases/download/v0.8.1/colorize-linux-amd64 --out colorize
$ chmod a+x colorize
$ ./colorize -h
$ docker logs -f my_app --tail=100 | ./colorize '^myWord'
$ # really make it standout.
$ docker logs -f my_app --tail=100 | ./colorize -c red+greenB+bold '^myWord'
Run Code Online (Sandbox Code Playgroud)
我使用ccze。正如@aimless所说,grc也是强大的工具。sudo apt install ccze对于像debian / ubuntu这样的操作系统,它很容易安装
但是,如果要给stderr着色,则需要将stderr输出重定向到stdout。例如:
docker logs -f my-app 2>&1 | ccze -m ansi
Run Code Online (Sandbox Code Playgroud)
-m ansi如果您想正常滚动输出,arg 会有所帮助
| 归档时间: |
|
| 查看次数: |
3123 次 |
| 最近记录: |