Simon.Sun 发表于 2024-8-16 10:19:37

活字格10.0 update1新功能解密:十九丶日志和监控模块增强

本帖最后由 Simon.Sun 于 2024-8-20 11:08 编辑

日志和监控是系统运维中重要的能力,自从 8.1 版本,可以在日志在线查看日志以来,有越来越多的格友们会通过服务管理去查看系统日志,定位问题,监控系统运行情况。在活字格 10.0 update1 对日志和监控模块进一步加强。
一、监控内置进程
监控模块,除了可以发布在活字格上的每个应用进程外,还可以监控一些活字格其他内置的一些进程,其中包括:

[*]用户管理服务进程:活字格服务管理控制台应用进程,即我们经常访问的的 22345 站点;
[*]流程进程:工作流依赖的 Java 进程;
[*]Java插件进程:Java 插件,WebAPI 依赖的 Java 进程;
[*]报表进程:活字格报表模块依赖进程。

开启了之后,就可以在监控里看到上述设置进程的 CPU 以及内存的使用情况,这样当我们系统访问出现卡顿时,就可以去监控上看一下,是不是系统硬件负载较高,然后是那个应用占用的比较高,在结合对应应用的审计和诊断日志,定位到用户做了什么操作,方便我们去定位优化应用。

二、监控和日志设置的过滤条件切换页面后会保留
我们在看日志时,经常会使用的一个操作是对日志进行过滤筛选。比如我们会去诊断日志,查看某个应用有没有错误信息,然后跟进上下文 ID 去审计日志定位到具体执行的页面方便我们快速定位问题位置。
比如,客户在访问应用时,点击某个按钮没有反应,然后我们去通过日志排查问题,先去看诊断日志,发现有下面这个错误:

但这个错误比较底层,我们只知道这里报错了,有问题。这里有个关键系信息,追踪上下文 ID(就是截图中箭头指向的 guid)。
PS:如果我们诊断日志里没有这个 ID,可以点击右侧设置按钮,去开启。


拿到追踪上下问题 ID 后,我们就可以去审计日志过滤出相关的日志来,比如:

在审计日志里,可以看到用户操作的页面,以及网络请求(CalcParamValue,设置变量命令对应的网络请求),然后就可以去对应页面排查:

最后我们发现,在页面上按钮里使用了设置变量命令去查询单行记录,但是由于忘记设置过滤条件了,导致本来想查出一行记录,查询出多条,就报错了。
期间,我们会通过日志设置过滤条件筛选,并会在不同日志页面来回切换查看,现在切换时可以保留这些过滤条件,切换页面就不用再重新设置查询条件了,方便一些。

三、负载均衡模式部署下支持 Elasticsearch

正常情况下,负载均衡环境通常由众多服务节点组成,每天会产生大量日志数据。常规 InfluxDB 设置通常无法处理每天超过五百万条的日志量。因此,有必要将 Elasticsearch 纳入负载均衡环境中作为日志数据库。

切换此条目后,Elasticsearch 即可在负载均衡环境中使用。

四、错误日志收集功能会收集代理服务信息
现在有很多客户部署活字格服务在内网环境,且配置了网络代理去访问外网。当技术支持问题到达我们时,我们需要知道用户的代理信息以调查请求失败的原因,所以在收集错误日志时,增加收集网络代理设置。其中包括:
1、基本代理信息:
如下图所示,基本代理配置主要包括 .NET 平台收集的W ebRequest.DefaultWebProxy 设置和基于环境变量配置的代理信息。
2、Hosts 文件映射配置
除了常见的代理配置外,用户还可以通过修改 Hosts 文件,将某些地址映射到其他位置,间接达到代理的效果。
3、Windows Internet 选项代理(仅限 Windows)
使用系统函数 WinHttpGetIEProxyConfigForCurrentUser,我们可以从 Windows 系统中的 Internet 选项中获取代理配置。比如:

4、WinHTTP 代理(仅限 Windows)
除了上述配置外,Windows 还支持通过 WinHTTP API 设置代理。例如,用户可以使用以下命令行设置基于 WinHTTP 的代理配置。
netsh winhttp set proxy proxy-server="http://proxy.msxfaq.de:3128" bypass-list="*.msxfaq.de,*.msxfaq.local,
<local>





页: [1]
查看完整版本: 活字格10.0 update1新功能解密:十九丶日志和监控模块增强