Skip to main content

Output and Troubleshooting

PLEASE NOTE: This page applies to Nimbusec Server Agent v19 or higher.


This section describes the expected output of the Nimbusec Server Agent and covers the success case as well as common error conditions.

Exit Codes

If you run the server agent as through scheduling like cron or windows scheduled tasks or you use the server agent as part of a scripted automation you can test for the following exit codes to trigger actions or send notifications.

Code Meaning
0 Success. The agent scanned all configured directories and was able to upload all scan results to the Nimbusec Servers.
1 An error occurred while reading the configuration through the config file or the environment variables. Due to this no scans were performed.
2 An unknown command line parameter was used when starting the server agent.
3 An error occurred during at least one scan. Unaffected domains may have been scanned successfully. Please check the logs to see errors and affected domains.
4 An error occurred during at least one upload of scan results. Unaffected domains may have been scanned successfully. Please check the logs to see errors and affected domains.


Log Output

The log output of server agent is structured as follows:

General Messages: Date Time [log level] log message
Domain Specific Messages: Date Time [log level][domain] log message

Log Level can be [info] to indicate an information-message or [error] indicating an error condition. If [error] is followed by [domain] the error message only relates to the scan for this domain.

The following example shows the log output for a scan with multiple domains (nimbusec.com, cyberrisk-rating.at, portal.nimbusec.com). 

$ ./nimbusagent-linux-64bit-v19.bin -yara
2026/07/21 16:45:57 [info] nimbusec agent 19.89
2026/07/21 16:45:57 [info] loading signatures from nimbusec finished
2026/07/21 16:45:57 [info][nimbusec.com] begin scan
2026/07/21 16:46:00 [info][nimbusec.com] sending baseline to https://api.nimbusec.com/domain/bmltYnVzZWMuY29t/baseline
2026/07/21 16:46:00 [info][nimbusec.com] sent baseline: Status 200 OK
2026/07/21 16:46:00 [info][cyberrisk-rating.at] begin scan
2026/07/21 16:46:02 [info][cyberrisk-rating.at] sending baseline to https://api.nimbusec.com/domain/Y3liZXJyaXNrLXJhdGluZy5hdA==/baseline
2026/07/21 16:46:02 [info][cyberrisk-rating.at] sent baseline: Status 200 OK
2026/07/21 16:46:02 [info][portal.nimbusec.com] begin scan
2026/07/21 16:46:04 [info][portal.nimbusec.com] sending baseline to https://api.nimbusec.com/domain/cG9ydGFsLm5pbWJ1c2VjLmNvbQ==/baseline
2026/07/21 16:46:05 [info][portal.nimbusec.com] sent baseline: Status 200 OK

Common Error Messages

oauth2: "invalid_client"

$ ./nimbusagent-linux-64bit-v19.bin -yara
2026/07/21 16:48:57 [info] nimbusec agent 19.89
2026/07/21 16:48:57 [error] "yara": failed to get signature: Get "https://api.nimbusec.com/yara?build=85&version=19": oauth2: "invalid_client"
$ ./nimbusagent-linux-64bit-v19.bin 
2026/07/21 17:02:13 [info] nimbusec agent 19.89
2026/07/21 17:02:13 [info][nimbusec.com] begin scan
2026/07/21 17:02:13 [info][nimbusec.com] sending baseline to https://api.nimbusec.com/domain/bmltYnVzZWMuY29t/baseline
2026/07/21 17:02:13 [error][nimbusec.com] could not send results: Put "https://api.nimbusec.com/domain/bmltYnVzZWMuY29t/baseline?build=89&version=19": oauth2: "invalid_client"
2026/07/21 17:02:13 [info][cyberrisk-rating.at] begin scan
2026/07/21 17:02:14 [info][cyberrisk-rating.at] sending baseline to https://api.nimbusec.com/domain/Y3liZXJyaXNrLXJhdGluZy5hdA==/baseline
2026/07/21 17:02:14 [error][cyberrisk-rating.at] could not send results: Put "https://api.nimbusec.com/domain/Y3liZXJyaXNrLXJhdGluZy5hdA==/baseline?build=89&version=19": oauth2: "invalid_client"
2026/07/21 17:02:14 [info][portal.nimbusec.com] begin scan
2026/07/21 17:02:14 [info][portal.nimbusec.com] sending baseline to https://api.nimbusec.com/domain/cG9ydGFsLm5pbWJ1c2VjLmNvbQ==/baseline
2026/07/21 17:02:14 [error][portal.nimbusec.com] could not send results: Put "https://api.nimbusec.com/domain/cG9ydGFsLm5pbWJ1c2VjLmNvbQ==/baseline?build=89&version=19": oauth2: "invalid_client"

The most common reason for this an error in the API key or secret. The message indicates that the server agent could not authenticate with the Nimbusec API Server.

While both screenshots share the same error message, the first case happens during initialization and prevents loading the required signatures. Therefore the the exit code is 1.
The second case occurs during the upload of a scan result and the agent exits with status 4 after the last upload.

no such file or directory

$ ./nimbusagent-linux-64bit-v19.bin 
2026/07/21 17:04:56 [info] nimbusec agent 19.89
2026/07/21 17:04:56 [info][nimbusec.com] begin scan
2026/07/21 17:04:56 [error][nimbusec.com] lstat ./nonexistent/: no such file or directory
2026/07/21 17:04:56 [info][nimbusec.com] sending baseline to https://api.nimbusec.com/domain/bmltYnVzZWMuY29t/baseline
2026/07/21 17:04:56 [info][nimbusec.com] sent baseline: Status 200 OK

The configured directory could not be found.
Exit Status: 3

permission denied

$ ./nimbusagent-linux-64bit-v19.bin 
2026/07/21 17:06:07 [info] nimbusec agent 19.89
2026/07/21 17:06:07 [info][nimbusec.com] begin scan
2026/07/21 17:06:07 [error][nimbusec.com] open /root/: permission denied
2026/07/21 17:06:07 [info][nimbusec.com] sending baseline to https://api.nimbusec.com/domain/bmltYnVzZWMuY29t/baseline
2026/07/21 17:06:07 [info][nimbusec.com] sent baseline: Status 200 OK

The configured directory was found but the permissions prevented the server agent from scanning its contents.
Exit Status: 3

Status 403 Forbidden

$ ./nimbusagent-linux-64bit-v19.bin 
2026/07/21 17:06:50 [info] nimbusec agent 19.89
2026/07/21 17:06:50 [info][discovery.nimbusec.com] begin scan
2026/07/21 17:06:50 [info][discovery.nimbusec.com] sending baseline to https://api.nimbusec.com/domain/ZGlzY292ZXJ5Lm5pbWJ1c2VjLmNvbQ==/baseline
2026/07/21 17:06:50 [info][discovery.nimbusec.com] sent baseline: Status 403 Forbidden

This error occurs if the configured domain does not match any of the domains which are configured in your website security monitor account.
Note: www.example.com and example.com do not count as matching domains as the full domain name must be identical.
Exit Status: 4