Frequently Asked Questions

This section provides answers to the following frequently asked questions (FAQs) about the Solace Geneos Agent configuration and operation.

Can the sampling rate be less than 30 seconds?

A monitor's sampling rate is required to be 30 seconds or greater because smaller polling interval may impact the event broker performance and therefore the agent's performance. Sampling rate can be set to a value below 30 seconds if:

  • the agent is running in development mode for testing purposes
  • the monitor is doing low performance impact queries, such as MonitorStatusMonitor and ServiceStatusMonitor, which do not send SEMP requests to the event broker, but instead simply gather statistics

To run the agent in development mode, add -DdevMode=true to the agent's VM startup option.

To allow a monitor to have a sampling rate less than 30 seconds even when the agent is running in production mode, override getSamplingRateFloor() method in monitor class to return a value other than 30. Caution must be exercised when overriding this method because the agent and the event broker's performance could be affected.

Why do obsolete data views show up in Active Console after changing the view name?

If a data view with certain name is already added to a gateway through NetProbes, changing its name, group header, sampler, and managed entity will not cause the view removed from the gateway. The only way to remove it is to restart the NetProbes.

How do I create dynamic views?

Solace Geneos Agent provides a default implementation of the View interface called BaseView. All the static views configured through monitor properties are loaded as BaseView objects. Monitor developers can call the BaseView constructor to create views on the fly to create new view instance, and can add/remove them to/from the monitor's viewMap by using the following monitor methods:

  • addView(View)
  • removeView(viewAliasName)

Why do Solace rules in the include file not work when included in the Gateway configuration?

Solace rules do not work from an include file, but they will work if they are part of the top level configuration.

  1. Open up the gateway configuration editor. You should see the configuration Gateway > Includes > solace_include.xml > Gateway.
  2. Open up the Actions folder (Gateway > Includes > solace_include.xml > Gateway > Actions), right-click the Email action, and select Copy.
  3. Select the Actions folder under Gateway > Actions.
  4. If prompted to "Create Actions", click Yes.
  5. Paste the Email action.
  6. Copy the Solace folder under Gateway > Includes > solace_include.xml > Gateway > Rules, and paste it under Gateway > Rules.

Why do I get duplicate log entries in solgeneosagent.log?

This may be due to log4j's appender additivity feature. Basically, each enabled logging request for a given logger is forwarded to all the appenders in that logger, as well as the appenders higher in the hierarchy. In other words, appenders are inherited additively from the logger hierarchy. For example:

log4j.category.com.solacesystems=ERROR, A1
log4j.category.com.solacesystems.solgeneos.solgeneosagent=WARN, A1

The warning log output by a class under solgeneosagent are forwarded to file appender A1 twice, which results in duplicate log entries in the log file.

There are two ways to avoid the problem:

  1. Remove appender A1 from solgeneosagent logger. This way, the logger inherits the logger appender A1 from solacesystem.
    log4j.category.com.solacesystems.solgeneos.solgeneosagent=WARN
  2. Add the following line to disable additivity:
    log4j.additivity.com.solacesystems.solgeneos.solgeneosagent=false

Why is my samplingStatus in Active Console not updated when the agent stops?

This problem could occur if you override the reportView method in your monitor implementation but forget to call checkSignedIn method in the NetProbeService class before updating the data view.

Why do I get error code 102 (HOST_NOT_TRUSTED) when running the agent?

If you get error code 102 (HOST_NOT_TRUSTED) when running the agent, that means you probably configured "Trusted API Hosts" on the NetProbe, and the hostname where the agent is running on is not in that list.