简介
本文档介绍如何解决由于Cisco Unified Contact Center Express(UCCX)上的非活动用户导致的CCXToCUICEngineSyncFailed RTMT警报问题。
先决条件
要求
Cisco 建议您了解以下主题:
- 思科统一情报中心(CUIC)
- 思科统一联系中心快捷版(UCCX)
- 思科统一通信管理器 (CUCM)
使用的组件
本文档不限于特定的软件和硬件版本。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
问题
通常,当座席/主管离开组织或调至新角色时,他们便不再是联系中心的一部分。
在这种情况下,您可以假设用户从CCX中删除,从CUCM或AD(用于LDAP集成)中删除本地用户。
但请注意,用户仍存在于CUIC上。尝试从CUIC中删除用户时,如果用户拥有CUIC上一个或多个实体(如控制面板、报告、自定义报告、值列表等)的所有权,则删除失败。
快速检查
登录Cisco Unified Intelligence Center > Configure > Users并搜索已删除的用户。
在这种情况下,在CCX和CUIC之间同步失败时将触发警报。
RTR:用户ID为:anie的用户无法同步到CUIC。请运行sync CLI命令以解决此问题。
应用ID:Cisco Unified CCX引擎
集群ID:
节点ID:uccx-sr
时间戳:2022年4月27日周三08:59:08 IST。警报在2022年4月27日(星期三)08:59:08生成
系统日志警报:
At Wed Apr 27 08:59:35 IST 2022 on node uccx-sr; the following SyslogSeverityMatchFound events
generated: SeverityMatch : Alert MatchedEvent : Apr 27 08:59:08 uccx-sr local7 1 : 53:
uccx-sr.cisco.local: Apr 27 2022 03:29:08.290 UTC : %UC_REST_CLIENT-1-UCCX_TO_CUIC_SYNC_FAILED:
%[RTR=User with userID:anie failed to be synced to CUIC. Please run sync CLI command to fix the issue.]
[AppID=Cisco Unified CCX Engine][ClusterID=][NodeID=uccx-sr]: Notification to CUIC failed AppID :
Cisco Syslog Agent ClusterID : NodeID : uccx-sr TimeStamp : Wed Apr 27 08:59:08 IST 2022
验证
从日志
启用跟踪。
导航到Cisco Unified CCX Serviceability > Trace > Configuration,然后选择Cisco Unified CCX Engine并设置跟踪。
REST_CLIENT - Debug, Xdebug1
启用跟踪后保存更改。
从RTMT收集Cisco Unified CCX引擎日志
代码段
1440456: Apr 27 08:59:08.286 IST %MIVR-REST_CLIENT-7-UNK: [MIVR_SS_RM_CONFIG-94-0-CONFIG] com.cisco.uccx.rest.client.CuicUserMgmtRestClient CuicUserMgmtRestClient.DELETE succeded, result=DELETE https://uccx-sr.cisco.local:8444/cuic/rest/cuicusers returned a response status of 200 OK
1440457: Apr 27 08:59:08.287 IST %MIVR-REST_CLIENT-7-UNK: [MIVR_SS_RM_CONFIG-94-0-CONFIG] com.cisco.uccx.rest.util.cuic.CuicUserMgmtRestUtils raising alert since deleteUsers API returned some failed users
1440458: Apr 27 08:59:08.287 IST %MIVR-REST_CLIENT-7-UNK: [MIVR_SS_RM_CONFIG-94-0-CONFIG] com.cisco.uccx.rest.util.cuic.CuicUserMgmtRestUtils Failed users list size1Failed users list : [anie]
1440459: Apr 27 08:59:08.287 IST %MIVR-REST_CLIENT-7-UNK: [MIVR_SS_RM_CONFIG-94-0-CONFIG] com.cisco.uccx.rest.util.cuic.CuicUserMgmtRestUtils parseFailedUsers ::anie
1440460: Apr 27 08:59:08.291 IST %MIVR-REST_CLIENT-1-UCCX_TO_CUIC_SYNC_FAILED: [MIVR_SS_RM_CONFIG-94-0-CONFIG] com.cisco.uccx.rest.util.cuic.CuicUserMgmtRestUtils Notification to CUIC failed: UCCX TO CUIC SYNC failed for these resources:::=User with userID:anie failed to be synced to CUIC. Please run sync CLI command to fix the issue.
1440461: Apr 27 08:59:08.291 IST %MIVR-REST_CLIENT-7-UNK: [MIVR_SS_RM_CONFIG-94-0-CONFIG] com.cisco.uccx.rest.util.cuic.CuicUserMgmtRestUtils Failed users list size1Failed users list : [anie]
1440462: Apr 27 08:59:08.291 IST %MIVR-REST_CLIENT-7-UNK: [MIVR_SS_RM_CONFIG-94-0-CONFIG] com.cisco.wf.admin.iaq.DBIAQConfiguration raiseRTMTAlertOnNotifcationFailure :: Sync API call failed for the userID ::anie
从CLI
1.在CLI上,运行SQL查询以验证CUIC数据库(DB)中是否存在用户ID。
运行SQL,从cuic_data:cuicuser中选择ID、名称、说明,其中名称如“%anie%”。
2.登录到UCCX Admin页面。导航到用户管理>用户视图,注意用户ID不存在。
检查是否可以从CUIC中删除用户。无法从CUIC中删除用户,错误为“无法删除用户”。此用户拥有一个或多个实体。”
解决方案
如前所述,如果用户有权访问一个或多个实体,您将无法直接从CUIC中删除该用户,并返回错误
“无法删除用户。此用户拥有一个或多个实体。”
确定用户拥有的实体
使用两种方法标识用户拥有的实体。
方法1.对DB直接使用SQL。
方法2.使用Reports > Stock > Intelligence Center Admin下的资源所有权和访问报告。
方法 1.
使用SQL查询标识触发警报的用户ID:
admin:run sql select id, name, description from cuic_data:cuicuser where name like '%anie%'
id name description
================================ ======== ===========
6902FD2E100001800000015A0A7FFCD4 CCX\anie
记下输出中的用户ID,并将其替换为SQL查询列表中的<userId>,以便获取用户拥有的实体的所有权。
run sql select Id, name from cuic_data:cuicCategory where Owner = '<userId>'
run sql select Id, name from cuic_data:cuicDashboard where Owner = '<userId>'
run sql select Id, name from cuic_data:cuicReportDefinition where Owner = '<userId>'
run sql select Id, name from cuic_data:cuicReport where Owner = '<userId>'
run sql select Id, name from cuic_data:cuicDatasource where Owner = '<userId>'
run sql select Id, name from cuic_data:cuicValueList where Owner = '<userId>'
run sql select Id, name from cuic_data:cuicCollection where Owner = '<userId>' and ValueListId is not null
run sql select Id, ScheduledreportName from cuic_data:cuicScheduledReports where UserId = '<userId>'
从SQL查询的输出可以清楚地看出,用户只拥有名为“代理CSQ自定义报告”的自定义报告的一个实体的所有权。
方法 2.
使用Reports > Stock > Intelligence Center Admin > Resource Ownership and Access下的“Resource Ownership and Access”报告。
注意:资源所有权和访问报告 — 介绍查看用户的访问权限和使用统一情报中心资源(如控制面板、报告和其他实体)的用户的所有权状态。特定版本的资源所有权和访问报告可作为管理员安全模板的一部分从软件页面获得;https://software.cisco.com/download/home/282163829/type/284697222/release/11.5%25281%2529
将报告导入CUIC。对用户运行报告,以识别CUIC上用户拥有的实体。
从CUIC中删除用户
通过这两种方法,您找到了用户拥有的实体。下一步是删除用户,具体步骤如下
选项1.登录As以模拟用户终端的登录,然后导航到用户拥有的报告并将其删除。但是,您不知道是否还有其他人使用此报告。但是,如果此报告或实体不重要且当前未使用,您可以继续删除它。
选项2.使用CLI上的SQL更新所有权并使super admin成为此实体的所有者。
第 1 项.
使用超级管理员登录到CUIC并导航到Users部分。搜索用户,然后从“操作”菜单中选择运行方式选项,如图所示。
您会注意到超级管理员登录时重定向到的页面,并模拟用户终端的登录。这不需要任何凭证,但CUIC会对其进行模拟。此用户的直接登录不起作用,因为此用户不存在。
导航到报告,搜索确定的报告名称并将其删除。
删除报告后,请继续并停止运行方式。
使用super admin重新登录CUIC后,导航到Users(用户)部分,您必须能够成功删除用户anie。
第 2 项.
当您不想删除自定义报告并继续使用它时,此选项很有用。登录到CUIC并使用运行方式选项模拟缺少的用户帐户。然后导航到报告,搜索报告,并更改权限以包括管理员或报告用户的组:
登录到CLI并验证已删除的用户的所有者ID:
将此用户创建的任何报告的所有权更新为超级管理员。
运行sql update cuic_data:cuicReport set owner = '1111111111111111111111111111AAAA',其中owner = '6902FD2E100001800000015A0A7FFCD4',如映像所示。
以超级管理员身份重新登录CUIC并注意报告。
立即继续删除CUIC上的用户。因为用户没有拥有其他实体。导航到配置>用户>操作菜单>删除,如图所示。
在页面右下方,弹出窗口显示用户已成功删除。
这确认用户anie已从CUIC成功删除。