Introduction
This document describes the diagnosis and resolution of a license exception impacting the NIMO flow aggregation process on Cisco WAE.
Prerequisites
Requirements
Cisco recommends that you have knowledge of these topics:
- Cisco WAE (Wide Area Emulator) architecture and flow collection processes
- Understanding of Smart Licensing and license entitlement checks on Cisco WAE
- Familiarity with the NIMO collection workflow in WAE
- Experience with basic Linux command-line operations on WAE servers
Components Used
The information in this document is based on these software and hardware versions:
- Cisco Network Management Services (NMS) with WAE (MATE, Cariden, Design, Live, Collector)
- WAE software version 7.5.3 (case context), 7.6.4 (document reference)
- Linux-based WAE Collector server
- Smart Licensing enabled and configured for flow features
- No recent upgrades, additions, or deletions reported prior to the issue
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
Background Information
Cisco WAE (Wide Area Emulator) is a platform within the Network Management Services (NMS) suite designed for network analytics, capacity planning, and traffic engineering. The NIMO (Netflow Import and Management Operations) collector is responsible for gathering flow data, which is vital for network reporting and analytics. Licensing for advanced flow features in WAE is managed via Cisco Smart Licensing. Each feature, such as flow aggregation or demand modeling, requires an appropriate license entitlement. During flow collection, WAE verifies the availability and compliance of the required licenses. A mismatch between the runtime process’s license check and the installed license entitlements can result in collection failures and impact network observability.
This document describes the diagnosis and resolution of a license exception impacting the NIMO flow aggregation process on Cisco WAE, where flow collection fails despite valid licenses being present.
Problem
The WAE server experienced a failure during the NIMO flow aggregation (flow_gregate) process. The failure was consistently accompanied by a license exception in the logs, specifically stating that no licenses were checked out for the feature "MD_FlowDemands." Despite this, the "license_check" command output showed valid and compliant licenses for all relevant flow features.
Observed Log Error
10-Jun-2025::15:37:20.015 SmartLicenseCb Did-35-Worker-32: - LicenseException: No Licenses checked out for feature MD_FlowDemands count:0
com.cisco.wae.sls.exception.LicenseException: No Licenses checked out for feature MD_FlowDemands count:0
at com.cisco.wae.sls.agent.Agent.verifyEntitlement(Agent.java:427)
at com.cisco.wae.sls.actioncb.SmartLicenseCb.verifyentitlement(SmartLicenseCb.java:335)
at jdk.internal.reflect.GeneratedMethodAccessor102.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at com.tailf.dp.annotations.ActionCallbackProxy.action(ActionCallbackProxy.java:125)
at com.tailf.dp.DpActionTrans.protoCallback(DpActionTrans.java:316)
at com.tailf.dp.DpActionTrans.read(DpActionTrans.java:222)
at com.tailf.dp.DpActionTrans.run(DpActionTrans.java:129)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
at com.tailf.dp.DpThread.run(DpThread.java:42)
License Status Output
[wae@wae-collector ~]$ license_check | grep Flow
MC_InterASFlows 2025 Sep 02 1 InCompliance
MC_FlowDemands 2025 Sep 02 1 InCompliance
MC_Flow 2025 Sep 02 1 InCompliance
[wae@wae-collector ~]$
Despite the above, the NIMO collection failed to complete successfully. The logs and license status output indicated a potential mismatch between the feature name used by the runtime process ("MD_FlowDemands") and the actual license entitlement installed ("MC_FlowDemands").
Solution
The issue was resolved by restarting the flow agent process on the WAE collector server. After the restart, the NIMO collection completed successfully, and the presence of the resulting database file confirmed the resolution. These steps were carried out:
Step 1: Review Error Logs and License Status
Carefully examine the WAE logs for license exceptions and verify the installed license entitlements using the license_check command. Note any discrepancies in feature naming between the logs and the installed licenses.
10-Jun-2025::15:37:20.015 SmartLicenseCb Did-35-Worker-32: - LicenseException: No Licenses checked out for feature MD_FlowDemands count:0
[wae@wae-collector ~]$ license_check | grep Flow
MC_InterASFlows 2025 Sep 02 1 InCompliance
MC_FlowDemands 2025 Sep 02 1 InCompliance
MC_Flow 2025 Sep 02 1 InCompliance
[wae@wae-collector ~]$
Step 2: Restart the Flow Agent Process (agent_flow)
Restart the process responsible for managing flow collections on the WAE server. This can be accomplished with the appropriate service command or process restart script (actual command syntax depends on the deployment and is not specified in the case data).
# Placeholder: Insert the actual service restart command for agent_flow based on your system environment.
Step 3: Validate NIMO Collection Completion
Check for the successful creation of the flow aggregation database, which confirms that the NIMO collection has completed without license exceptions.
-rw-r--r--. 1 wae wae 80M Jun 10 16:11 as26615_bb_flow_aggregate.db
Step 4: Monitor the System
After applying the fix, monitor the WAE system for at least one week to ensure that the issue does not reoccur and that flow collections continue to operate as intended.
# Monitoring is performed via normal operational procedures. No specific command output provided.
Cause
The root cause appears to be a temporary issue within the flow agent process that resulted in a license check exception. Despite valid and compliant license entitlements being present for "MC_FlowDemands," the runtime process was unable to check out the required license for "MD_FlowDemands." Restarting the flow agent process resolved the mismatch and restored normal operation. No persistent configuration or entitlement issue was identified.
Related Information