$ curl https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/resources/configure-cloudwatch.sh | bash
在 AWS 上的 Red Hat OpenShift 服务 (ROSA) 中,有多种方法可以查看您的日志。 使用以下步骤将日志转发到 AWS CloudWatch 并使用oc logs
直接通过 pod 查看日志。
ROSA 没有预配置日志记录解决方案。 |
安装日志记录附加组件服务以将日志转发到 AWS CloudWatch。
运行以下脚本以将您的 ROSA 集群配置为将日志转发到 CloudWatch
$ curl https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/resources/configure-cloudwatch.sh | bash
将 ROSA 配置为将日志发送到 CloudWatch 超出了本教程的范围。 与 AWS 集成和启用 CloudWatch 日志记录是 ROSA 的重要方面,因此包含一个脚本以简化配置过程。该脚本将自动设置 AWS CloudWatch。您可以检查脚本以了解所涉及的步骤。 |
Varaibles are set...ok.
Policy already exists...ok.
Created RosaCloudWatch-mycluster role.
Attached role policy.
Deploying the Red Hat OpenShift Logging Operator
namespace/openshift-logging configured
operatorgroup.operators.coreos.com/cluster-logging created
subscription.operators.coreos.com/cluster-logging created
Waiting for Red Hat OpenShift Logging Operator deployment to complete...
Red Hat OpenShift Logging Operator deployed.
secret/cloudwatch-credentials created
clusterlogforwarder.logging.openshift.io/instance created
clusterlogging.logging.openshift.io/instance created
Complete.
几分钟后,您应该开始在 AWS CloudWatch 中看到日志组。 运行以下命令查看日志组
$ aws logs describe-log-groups --log-group-name-prefix rosa-mycluster
{
"logGroups": [
{
"logGroupName": "rosa-mycluster.application",
"creationTime": 1724104537717,
"metricFilterCount": 0,
"arn": "arn:aws:logs:us-west-2:000000000000:log-group:rosa-mycluster.application:*",
"storedBytes": 0,
"logGroupClass": "STANDARD",
"logGroupArn": "arn:aws:logs:us-west-2:000000000000:log-group:rosa-mycluster.application"
},
{
"logGroupName": "rosa-mycluster.audit",
"creationTime": 1724104152968,
"metricFilterCount": 0,
"arn": "arn:aws:logs:us-west-2:000000000000:log-group:rosa-mycluster.audit:*",
"storedBytes": 0,
"logGroupClass": "STANDARD",
"logGroupArn": "arn:aws:logs:us-west-2:000000000000:log-group:rosa-mycluster.audit"
},
将消息输出到stdout
。
在 OSToy 应用程序中,单击**主页**,然后单击**日志消息 (stdout)**的消息框。
编写要输出到stdout
流的消息,例如“一切正常!”。
单击**发送消息**。
将消息输出到stderr
。
单击**日志消息 (stderr)**的消息框。
编写要输出到stderr
流的消息,例如“哦,不!错误!”。
单击**发送消息**。
oc
命令查看应用程序日志在命令行界面 (CLI) 中输入以下命令以检索前端 Pod 的名称
$ oc get pods -o name
pod/ostoy-frontend-679cb85695-5cn7x (1)
pod/ostoy-microservice-86b4c6f559-p594d
1 | Pod 名称是ostoy-frontend-679cb85695-5cn7x 。 |
运行以下命令以查看stdout
和stderr
消息
$ oc logs <pod-name>
$ oc logs ostoy-frontend-679cb85695-5cn7x
[...]
ostoy-frontend-679cb85695-5cn7x: server starting on port 8080
Redirecting to /home
stdout: All is well!
stderr: Oh no! Error!
在AWS Web 控制台上导航到**CloudWatch**。
在左侧菜单中,单击**日志**,然后单击**日志组**以查看不同的日志组。 您应该看到 3 个组
rosa-<集群名称>.application
rosa-<集群名称>.audit
rosa-<集群名称>.infrastructure
单击rosa-<集群名称>.application
。
单击前端 Pod 的日志流。
筛选stdout
和stderr
。
展开行以显示您之前输入的消息和其他相关信息。
返回日志流并选择微服务。
在搜索栏中输入“microservice”以查看日志中的其他消息。
展开其中一个条目以查看前端 Pod 从微服务接收到的颜色以及哪个 Pod 将该颜色发送到前端 Pod。