Skip to content

Troubleshooting

Nathan Leach edited this page Sep 22, 2021 · 4 revisions

Troubleshooting

Configuration file missing

If you get this error:

Unhandled Exception: System.TypeInitializationException: The type initializer for 'CxAnalytix.Configuration.Config' threw an exception. ---> System.IO.FileNotFoundException: Configuration file missing.
   at CxAnalytix.Configuration.Config..cctor() in c:\programdata\checkmarx\CxAnalytix\Configuration\Config.cs:line 26
   --- End of inner exception stack trace ---
   at CxAnalytixCLI.Program.Main(String[] args) in c:\programdata\checkmarx\CxAnalytix\CxAnalytixCLI\Program.cs:line 47

Try setting your current directory to the same directory as the CxAnalytixCLI.dll e.g.

cd C:\ProgramData\checkmarx\CxAnalytix\artifacts\Release\

Trace Web API I/O Data

All data I/O with the web APIs can be captured by adding a logger to the log4net configuration with the following lines:

<logger name="CxRestClient.IO">
    <level value="TRACE_NETWORK" />
</logger>

Trace Web API Operations

Capturing the web API data I/O generates a large amount of logging data. A reduced set of data showing web API requests, timings, and response statuses can be captured by adding the following logger to the log4net configuration:

<logger name="CxRestClient.Utility">
  <level value="TRACE" />
</logger>

Execution Logging Verbosity

The TRACE_NETWORK log level setting as described above is generally only useful in the CxRestClient.IO namespace. It can also be applied at the root level logger to increase the verbosity of logging to the entire application to the maximum level possible:

  <root>
    <level value="TRACE_NETWORK" />
    <appender-ref ref="Console" />
    <appender-ref ref="RollingFile" />
  </root>

Applying TRACE_NETWORK at the root level is really not recommended. A level of logging that increases the verbosity of execution logging but excludes network traffic is TRACE:

  <root>
    <level value="TRACE" />
    <appender-ref ref="Console" />
    <appender-ref ref="RollingFile" />
  </root>

The DEBUG level of logging is less verbose than TRACE and should be the first choice for troubleshooting issues:

  <root>
    <level value="DEBUG" />
    <appender-ref ref="Console" />
    <appender-ref ref="RollingFile" />
  </root>