📓 概要:
在OpenShift 4中如何查看应用的日志。
前言
新的系列文章: 《开发者openshift4使用入门教程》
我所在的公司目前使用的K8S是RedHat的OpenShift 4, 虽然有官方文档, 并且有专门的 Develop 章节, 但是实际使用发现, 开发者(特别是中国的开发者, 传统行业\金融行业的开发者)关注的功能和章节相去甚远. 所以我专门针对开发经常问我的问题, 总结出来这个系列文章.
希望对在使用OpenShift 4的开发者会有所帮助. ❤️❤️❤️
有以下几种方式查看:
- 通过日志平台EFK的kibana查看
- 通过应用实例(pod)的 logs 查看
- 通过应用实例(pod)的 terminal 进入容器内部通过shell命令查看.
- 通过jenkins查看应用构建(build)过程的日志.
- 查看整个系统(Or 项目, Project)的事件日志
- ...
通过日志平台EFK的 kibana 查看
- 进入管理(Administrator)控制台, 点击 Monitoring -> Logging 会跳转到日志平台的 Kibana:
- Kibana地址: <https://kibana-openshift-logging.caas.example.com/>
- 进入Kibana后, 选择索引:
project.* . 如下图:
- EFK查询语法请参考这个链接, 这里不详细介绍. 可以通过以下的 Available Fields 进行快速筛选查看:
kubernetes.container_namekubernetes.labels.appkubernetes.pod_name
通过应用实例(pod)的 logs 查看
- 选择 开发者视角 -> Advanced -> Search -> 下拉框内输入
pod 并选择pod. 如下图:
- 跳转到
pod展示页面, 如下图, 点击想要查看的pod进入, 如 auth-server-1-dtxgm:
- 进入到pod details页面, 可以看到pod 概览信息, 如内存, cpu和文件系统使用量. 点击 Logs 查看日志:
- 页面如下, 可以点击左侧按钮进行日志的暂停/继续; 可以点击右侧按钮进行日志的下载和日志框的最大化:
- 上边页面可以通过浏览器的 Ctrl+F 进行日志关键词搜索.
通过应用实例(pod)的 terminal 进入容器内部通过shell命令查看
书接上回, 进入到 pod details 页面.
- 点击 Terminal 进入pod 的终端页面, 如下图:
- 通过shell linux命令来查看对应的日志, 如下图. 日志目录由应用自己定义, 常见的日志目录有:
- NGINX日志:
/var/log/nginx - OpenJDK和Tomcat镜像日志:
/deployments/<your-app>/logs或~/logs
通过jenkins查看应用构建(build)过程的日志
- 切换到 开发者视角 控制台, 点击 Builds 菜单, 点击要查看的 build, 本例中为 cmcsex:
- 进入 Build Config Details 页面后, 切换到 Builds 标签, 选择要查看具体那一次的 Build 日志, 点击:
- 进入具体某一次的build 之后, 会有 build details 信息, 包括pipeline, 构建状态, jenkins脚本等. 点击 view logs 查看日志:
- 点击后会跳转到 jenkins 的登陆页面, 点击登录:
- jenkins 日志如下:
❗️ 注意:
Build(构建)的日志不会长久保留, 可能存在去查看时日志已经无法找到的情况.
查看整个系统(Or 项目, Project)的事件日志
切换到 开发者视角 控制台 -> Advanced -> Events 如下: