Skip Navigation

Command-line options for the
Cylance Engine

The
Cylance Engine
uses a .ini configuration file to control its configuration (see Configuration file for the Cylance Engine) but you can override certain options with command-line options.
Option
Default setting in .ini configuration file (Service section)
Description
-c
./
Cylance
TcpService.ini
This option specifies the path to the configuration file. This option is only required when running the
Cylance Engine
in a different directory from where it was installed.
The default location of the
Cylance
TcpService.ini configuration file is
/opt/cylance/lib/samplescore
.
-p
Port=9002
This option specifies the port that this instance of the
Cylance Engine
should listen on for connections. Any port number greater than 1024 will work but the port must not be occupied by another application.
If a port number is specified in the Service section of the
Cylance
TcpService.ini configuration file, this option overrides that value.
-s
Shutdown=false
This option enables the processing of the shutdown command via the socket.
This option should not be enabled for production environments.
-u
DataFileUpdateInterval=10
This option specifies the interval, in seconds, between checks to see whether the .ini configuration file contains any updated settings. Only certain settings in the configuration file are checked. For more information, see the Service section in Configuration file for the Cylance Engine.
-C
MaxConcurrency=0
This option specifies the maximum number of files that the
Cylance Engine
can process simultaneously. The default value of 0 indicates that the concurrency should be set to the number of detected CPU cores. Setting this value higher than the number of CPU cores could lead to poor system performance. 
-P
MaxPendingConnections=100
This option specifies the maximum number of connections that can be pending (that is, not yet being processed) before new connections are rejected.
-T
ScoringTimeout=300
This option specifies the amount of time, in seconds, to allow for scoring a single file. A non-zero value indicates the time in seconds. Setting this value too low may result in abort errors when scoring files, especially archives.
-E
All configured activities
This option disables all activities specified in the configuration file except for the list provided in this command. In the .ini configuration file, the activity names are specified by the name that follows "Activity:". Multiple activities can be specified by using a comma-separated list without spaces.
-D
This option disables the activity or activities specified by the list provided in this command. In the .ini configuration file, the activity names are specified by the name that follows "Activity:". Multiple activities can be specified by using a comma-separated list without spaces.
--protocol
Protocol=IDP
This option specifies the protocol to run on the listening port. The valid values are:
  • InfinityDaemonProtocol or IDP: the legacy protocol supported by TcpShim and InfinityTcpService, and earlier versions of
    Cylance
    TcpService.
  • REST: the newer Cylance RESTful API (CERA) protocol
When using the
Mono
runtime, the default protocol is IDP, whereas when running under the
Microsoft .NET Framework
, the default protocol is REST.
--prometheus-port
This option specifies the port on which to serve the
Prometheus
server.
The
Cylance Engine
has two additional options that control logging and that map to sections other than the Service section:
  • The option
    --console-log-level
    corresponds to the LogLevel setting in the ConsoleLog section.
  • The option
    --file-log-level
    corresponds to the LogLevel setting in the FileLog section.
These options allow you to override temporarily the logging settings to help diagnose issues without having to change the .ini configuration file.
All supported command-line options can always be queried using the
-h
or
--help
option.
The following invocation shows a command including options:
/opt/cylance/bin/CylanceTcpService -c CylanceTcpService.ini -p 9002 -u 30
When a given parameter is found both in the configuration file and on the command line, the command-line option overrides the configuration file. This allows you to start multiple instances of the
Cylance Engine
on different ports while sharing the same configuration file.