Agent Status
  • 29 Mar 2023
  • 3 Minutes to read
  • Contributors
  • PDF

Agent Status

  • PDF

Article summary

Agent Status

To help with field deployments a command line utility was added to the agent: “agentStatus”. This utility simplifies debugging of field issues.

Tab Completion

In 23.04 tab completion was added to the agentStatus. To use it, the --login (-l) option must be used when calling /bin/bash to setup then environment correctly.

Calling Methods

Via an Interactive Shell:

$ sudo docker exec -it <CONTAINER ID> /bin/bash --login
# agentStatus help

Via Docker Exec:

$ sudo docker exec <CONTAINER ID> /usr/bin/agentStatus help

How to Use

The agentStatus command uses modules group functionalities : agentStatus .

There are general modules that can be found on all agents and specific modules for measurements.

Getting Help

To get general help:

# agentStatus help

Module specific help:

# agentStatus <MODULE> help

Data Module

Commands relating to the data path.

stats      
status     Show status of data reporting status.
output     Show current data output settings.
output log (enable|disable)   Enable or disable data output in the container log.
output mqtt (enable|disable)   Enable or disable data output to the internal MQTT broker.
                              Topic is "debug/performancedata/openmetric".

debug                     Show debug status.
debug (enable|disable)    Enable or disable debugging.
debug <value>             Set debug level (engineering).
debug lws <LWS_LEVEL>     Set websocket debug level (engineering).
                         LWS_LEVEL: any combination of: err, info, warn, 
                           notice, debug, parser, header, ext, client, latency  , default

Example:

# agentStatus data status
{
        "connection":   {
                "DataBrokerServerPort": 55888,
                "AuthenticationError":  "",
                "LastTransmissionTime": "Never",
                "LastTransmissionTimeAck":      "Never",
                "LastConnectionTime":   "Never",
                "LastDisconnectionTime":        "Never",
                "LastAuthenticationTime":       "Never",
                "ssl":  {
                        "Enabled":      true,
                        "AllowSelfSigned":      true,
                        "AllowInsecureCerts":   false,
                        "SkipHostnameCheck":    true,
                        "AllowExpiredCerts":    false
                }
        },
        "MeasurementState":     "Disconnected",
        "DataBrokerQueueDepth": 1000,
        "RingBatchWaiting":     999
}

# agentstatus data stats
{
        "dataGatewayStats":     {
                "streamSizeMax":        1879,
                "toBrokerTxCount":      268,
                "toBrokerTxBytes":      263043,
                "toBrokerConnection":   1,
                "toBrokerConnectionError":      0,
                "toBrokerConnectionEstablished":        1,
                "toBrokerConnectionClosed":     0,
                "toBrokerConnectionShutdown":   0,
                "toBrokerSendIdentification":   1,
                "toBrokerInFlightMaxCount":     13,
                "toBrokerATO":  0,
                "toBrokerATOLimitReached":      0,
                "toBrokerAuthenticationSuccessful":     1,
                "toBrokerAuthenticationError":  0,
                "toBrokerAuthenticationFailure":        0,
                "toBrokerAuthenticationUnknown":        0,
                "toBrokerAuthenticationRenew":  0
        }
}

Management Module

Commands relating to the management path.

authentication  Show current authentication token information.
configuration   Show current active configuration receied from Sensor Orchestrate.
stats
status          Show current connection status to the management interface.

debug                     Show debug status.
debug (enable|disable)    Enable or disable debugging.
debug <value>             Set debug level (engineering).
debug lws <LWS_LEVEL>     Set websocket debug level (engineering).
                          LWS_LEVEL: any combination of: err, info, warn,
                            notice, debug, parser, header, ext, client, latency, default

Example

# agentStatus management status
{
        "connection":   {
                "AuthenticationError":  "",
                "LastConfigUpdate":     "Never",
                "LastConnectionTime":   "Tue 15 March 2022 14:27:11 UTC",
                "LastDisconnectionTime":        "Never",
                "LastAuthenticationTime":       "Tue 15 March 2022 14:27:17 UTC",
                "ssl":  {
                        "Enabled":      true,
                        "AllowSelfSigned":      true,
                        "AllowInsecureCerts":   false,
                        "SkipHostnameCheck":    true,
                        "AllowExpiredCerts":    false
                }
        },
        "ManagementState":      "Waiting for config",
        "TenantId":     "",
        "ConfigId":     "",
        "ConfigRevision":     "",
        "ManagementServer":   "192.1.1.2",
        "ManagementPort":     55778
}

# agentStatus management stats
{
        "managementStats":      {
                "toProxyTxCount":       0,
                "toProxyTxBytes":       0,
                "toProxyConnection":    1,
                "toProxyConnectionError":       0,
                "toProxyConnectionEstablished": 1,
                "toProxyConnectionClosed":      0,
                "toProxyConnectionShutdown":    0,
                "toProxySendIdentification":    0,
                "toProxyAuthenticationSuccessful":      0,
                "toProxyAuthenticationError":   0,
                "toProxyAuthenticationFailure": 0,
                "toProxyAuthenticationUnknown": 0,
                "toProxyAuthenticationRenew":   0,
                "fromProxyRxCount":     0,
                "fromProxyRxBytes":     0,
                "fromProxyRxError":     0,
                "fromProxyRxMessageConfig":     0,
                "fromProxyRxMessageAuthenticationReply":        0,
                "fromProxyRxMessageCommandRun": 0,
                "fromProxyRxMessageCommandStart":       0,
                "fromProxyRxMessageCommandStop":        0,
                "fromProxyRxMessageCommandError":       0,
                "fromProxyRxMessageCommandUnknown":     0
        }
}

System Module

Commands related to the agent.

status          Show system status.

Example:

# agentStatus system status
{
        "AgentId":      "74fbdd77-8997-410f-8789-f8adb2ee8927",
        "agentType":    "actuate",
        "version":      "skylight-agent-actuate-amd64_22.04_2",
        "description":  "Accedian Networks skylight-agent-actuate-amd64 22.04_2",
        "InternalMqttPort":     1883
}

Monitor

The monitor is the agent's parent process. It's responsible for starting and monitoring processes.


NOTE: Available starting with 23.04.

Available commands:

    status                Show monitor's status.
    process list          List currently monitored processes.
    process stats         Display statistics for all monitored processes.
    process uuid <UUID>   Display process control block of the matching the UUID.
    process name <name>   Display process control block of the first matching name.

© 2024 Cisco and/or its affiliates. All rights reserved.
 
For more information about trademarks, please visit: Cisco trademarks
For more information about legal terms, please visit: Cisco legal terms

For legal information about Accedian Skylight products, please visit: Accedian legal terms and tradmarks



Was this article helpful?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.