通过 REST 访问 Glassfish 服务器日志

通过 REST 访问 Glassfish 服务器日志

我正在使用 Glassfish 3.1.2.2。我已将 Glassfish 部署到本地主机。我已启用监控服务并将所有组件的日志级别设置为 HIGH。

在此处输入图片描述

http://host:port/management/domain/view-log我应该能够根据以下说明在 REST 端点使用服务器日志视图 官方文档,但我得到的答复却很笼统:

$ curl -H "Accept: application/json" http://localhost:4848/monitoring/domain/view-log
{"message":"","command":"Monitoring Data","exit_code":"SUCCESS"}

我在这个地址得到了正确的回应,所以我认为我的配置基本正确:

$ curl -H "Accept: application/json" http://localhost:4848/monitoring/domain/
{
   "message":"",
   "command":"Monitoring Data",
   "exit_code":"SUCCESS",
   "extraProperties":{
      "entity":{

      },
      "childResources":{
         "server":"http:\/\/localhost:4848\/monitoring\/domain\/server"
      }
   }
}

请注意,我收到的通用响应是针对以下任何无效端点发送的domain

$ curl -H "Accept: application/json" http://localhost:4848/monitoring/domain/jklnjkn
{"message":"","command":"Monitoring Data","exit_code":"SUCCESS"}

如何使用监控 REST 端点访问 Glassfish 3.1.2.2 服务器日志?

答案1

只是发现文档中有一个拼写错误,让我误入歧途。日志文件位于以下management路径,而不是以下monitoring路径:

在此处输入图片描述

日志文件在management路径上可用,而不是monitoring路径上可用。这些是正确的资源:

此外,由于某种原因,view-log当您请求 JSON 时资源没有响应。以下请求返回日志文件:

$ curl http://localhost:4848/monitoring/domain/view-log

但这什么也没有返回:

$ curl -H "Accept: application/json" http://localhost:4848/management/domain/view-log

才不是。

view-log/details如果请求的话将会用 JSON 响应。

相关内容