A Symantec Endpoint Protection Manager (SEPM) fails to sync with the Cloud. On the Cloud tab within the SEPM, the Assets Connection status shows the error
-1: Asset collector malfunctioning
On the Cloud page within the SEPM
-1: Asset collector malfunctioning
In the sepcloudhub.date.log
[SEP Asset Message Transformer] ERROR
com.symantec.lib.app.RunnableModule - SEP Asset Message Transformer
unhandled exception, the main thread terminated
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
at java.lang.String.substring(String.java:1967)
at com.symantec.platform.hub.eventserviceplugin.SepMessageTransformerModule.get
ProductName(SepMessageTransformerModule.java:927)
This is caused by the AGENT_VERSION within the SEM_AGENT table being in an unexpected format. The SEPM is expecting the format to be "14.x.x.x", and some clients are listed in a different format, or have no version at all.
Upgrading to the latest version of Symantec Endpoint Protection Manager resolves this issue.
Workaround
Clients can be identified and addressed individually if upgrading the SEPM isn't feasible immediately. To identify the clients causing the issue, query the entire contents of SEM_AGENT and SEM_COMPUTER. Look at the AGENT_VERSION column. Look for clients where the version is in a format other than "14.x.x.x". These will be the clients causing the sync to fail. Typically upgrading these clients to the latest build of SEP (that the SEPM is on) will address this issue. Some of the affected clients may be offline, they can be deleted from the SEPM.