本文提供了有关 ePO 数据通道 (DC) 工作方式的背景信息。 此外,它还提供用于诊断数据通道中问题的有用故障排除步骤。
数据通道工作流的概要概述:
- ePO 应用程序服务器 (Tomcat) 将直流请求写入到EPOAgentHandlerDataChannelWQ (DC WQ) ePO 数据库的表。
- 代理处理程序会定期轮询 DC WQ 表,查找要执行的工作。
- 代理处理程序会选择 DC WQ 中任何未解决的 DC 请求,然后处理它们。 从本质上讲,初始出唤醒呼叫是一种McAfee Agent客户端上代理的一种命令,指示其重新与 ePO 通信,因为 DC 工作可用。
- 代理处理程序与 Tomcat 通信并更新出站 DC 请求的状态,无论是成功还是失败。
- 代理与 ePO 任一通信:
- 在其正常的代理与服务器通信间隔 (无ASCI)
或
- 如果上述步骤 3 中的代理处理程序联系并发现 DC 工作正在 DC 工作队列中等待它。 代理会选择该工作并完成请求。
- 内部数据库维护任务每分钟运行一次。 此任务将在数据库中查找已完成或已到期的 DC 请求。 然后它继续将其从 DC WQ 中删除。
SQL 查询:
使用以下查询获取有关数据通道请求的信息:
- 要显示代理处理程序正在处理特定客户端的数据通道请求,请使用以下 SQL 查询:
选择
ELN。NodeName 用作 ClientName、
ELN。AgentGUID、
AH.ComputerName 作为 HandlerName、
啊。LastKnownTCPIP 作为 HandlerIP,
DCWQ。源作为 DCRequest,
DCWQAttempts.LastDeliveryAttempt 作为 DCTemAttemptTime,
DCWQ。重试次数为重试DelaySeconds,
DCWQAttempts.RetriesRemaining、
DCWQ。到期时间为 DCExpireTime
从
EPOLeafNode 为 ELN,EPOAgentHandlerDataChannelWQMT 为 DCWQ,
EPOAgentHandlerDataChannelWQAttemptsMT 用作 DCWQAttempts,EPORegisteredApacheServers 作为 AH
位置
DCWQ。AutoID = DCWQAttempts.ParentID
和 DCWQ。目标 = ELN。AutoID
和 DCWQAttempts.AgentHandlerId = AH。AutoID
和 ELN。节点名称 = ''
位置
是正在查询的系统。 例如,要查询名为 TEST 的系统,您必须更新查询的最后一行,以:
ELN.NodeName = 'TEST'
- To display a count of all data channel request types in the queue, use the following SQL query:
Select Source as DCRequest, count (*) as 'Number of Occurrences'
From EPOAgentHandlerDataChannelWQ
Group By Source Order by Source asc
日志文件条目:
数据通道使用安全管道 (SPIPE) 协议生成请求。 它拥有四个主要 SPIPE 请求类型,您可以在以下日志文件中查看这些请求类型:
- 请求类型:MsgUpload
目的: 请求用于将 DC 项目从客户端节点发送到代理处理程序。
示例(服务器登录到代理处理程序):
NAIMSERV Received [MsgUpload] from :{}
- 请求类型:MsgAvailable
目的: 当 ePO 需要向代理提交项目时,代理接收到 ePO 的请求。
示例(代理日志客户端上显示):
- 代理包类型为MsgAvailable
- LstnSvr StartResponse-POST-PKG - MsgAvailable
- 请求类型:MsgRequest
目的: 此请求由代理在接收到 MsgAvailable 请求。 此请求会触发代理处理程序,以MsgResponse.
示例#1 (代理日志客户端上显示):
代理包类型为MsgRequest
示例#2(服务器登录到代理处理程序):
Received [MsgRequest] from :{}
- 请求类型:MsgResponse
目的: ePO 发送此请求,以回应MsgRequest SPIPE 包。
示例(代理日志客户端上显示):
- Agent CMsgResponsePackage::ParsePackage() - New MsgResponse-EEADMIN_1000_UserUpdatesAndAcknowledgementRsp was received
- Agent Package type is MsgResponse
- Agent CMsgResponsePackage::ParsePackage() - New MsgResponse-EEADMIN_1000_AddDomainUsersRsp was received
常见错误条件示例:
本节提供了可能发生的常见数据通道问题解决方案。
- 示例 1 - 数据通道请求(例如 代理唤醒呼叫)会成功,但是 ePO 服务器任务日志 上的系统始终会报告其已过期。
server_.log代理处理程序上的文件可能包含以下错误:
- MCUPLOAD SecureHttp.cpp(968): Failed to send HTTP request. Error=12029 (12029)
- NAIMSERV server.cpp(587): Failed to send request, err=0x80004005, HTTP status code=0
原因:
Apache与客户端上运行的应用程序服务器服务 (Tomcat) ePO 服务器。 由于无法通信,因此任务的状态从未设置为成功或失败。 最终,维护任务会运行并确定任务已过到期以及任务到期。
可能的解决方案:
- 查看server.ini文件 (\DB\server.ini). 它可告知您IP处理程序使用 Tomcat 的电子邮件地址和 DNS 名称。 请确认它们是正确的。
- 请确保 DNS 为代理处理程序IP地址ePO 服务器地址。
- 确保端口 8444(默认端口ePO 服务器代理处理程序和代理处理程序之间的路由。
- 示例 2 - 服务器任务日志数据通道相关任务在达到到期时间后会永久卡在"进度"中。 EPODataChannelData 表正在增大。
原因:
内部维护任务就是每分钟运行一次,以查找过期的数据通道对象并将其删除。 但是,任务未在运行。
可能的解决方案:
此条目在orion.log显示是否清理数据通道表格的内部任务(dbcleanup 任务)正在运行:
INFO [scheduler-TaskQueueEngine-thread-4] Internal.DbCleanupTask - Running DataChannel DbCleanupTask
此查询为您提供dbcleanup 任务:
Select RunTime from OrionTaskQueueMT where TaskDescription like '%dbclean%'
根据dbcleanup 任务: