General Troubleshooting: Static .NET Agent on Linux



Review Logs

The vFunction logs are, by default, written to the folder:

  • Sudo / Root Installation: /var/log/vfunction/instances/$INSTANCE_NAME/
  • Sudoless Installation: $BASE_DIR/vfunction/var/log/vfunction/instances/$INSTANCE_NAME/

This folder includes:

  • archive directory for any older logging that has been rotated out. By default, logs are rotated after they reach 1gb in size. And, 30 log files are retained in this log directory
  • vfviper.err.log includes the redirected Standard Error output from the Viper process
  • vfviper.log includes Info-level logging for Viper
  • vfviper-all.$DATE.log includes Debug-level logging for all of Viper’s log messages with basic details
  • vfviper-own.$DATE.log includes Trace-level logging from Viper’s own log messages with extra web details using some ASP.NET core renderers

Confirm there are no issues in the Viper Configuration Files

During the installation process, the Viper Configuration Files are created. Confirm there are no unexpected characters or unexpected formatting in the Configuration Files that are used to start the vFunction Viper process / service.

Replace $BASE_DIR with the vFunction Installation Location. Replace $INSTANCE_NAME with the name of the vFunction Instance.
  • Sudo / Root Installation: /etc/sysconfig/vfunction/viper/instances/$INSTANCE_NAME/conf.json
  • Sudo / Root Installation: /etc/sysconfig/vfunction/viper/instances/$INSTANCE_NAME/repo-conf.yaml
  • Sudoless Installation: $BASE_DIR/vfunction/etc/sysconfig/vfunction/viper/instances/$INSTANCE_NAME/conf.json
  • Sudoless Installation: $BASE_DIR/vfunction/etc/sysconfig/vfunction/viper/instances/$INSTANCE_NAME/repo-conf.yaml

Attempt to manually start Viper in the Command Line

Attempting to manually start Viper from the Command Line may generate Console output that is helpful in understanding the point of failure with starting or running Viper.

Sudoless Installation

Take the following steps to try to manually start Viper:

  1. Start the Viper process with debugging enabled in the script:
### Replace $BASE_DIR with the vFunction Installation Location
### Replace $INSTANCE_NAME with the name of the vFunction Instance
sh -x $BASE_DIR/vfunction/opt/vfunction/viper/instances/$INSTANCE_NAME/bin/vf-viper start
Sudo / Root Installation

Take the following steps to try to manually start Viper:

  1. Start the Viper service with debugging enabled in the script:
### Replace $BASE_DIR with the vFunction Installation Location
### Replace $INSTANCE_NAME with the name of the vFunction Instance
systemctl start vf-viper-$INSTANCE_NAME.service
### Or
/etc/init.d/vf-viper-$INSTANCE_NAME start

Turn on Debug / Trace Logging

Debug Logging can be turned on by creating the subkey debug_mode: true under the key Viper in the installation.yaml. After creating the subkey, run the upgrade.sh script. Similarly, the subkey trace_mode: true can be used instead.

viper:
  debug_mode: true
  assemblies:
    - /app/bin
  stored_procedure:
    # optional db_provider: sqlserver, oracle
#    db_provider:
    # optional db_connection_string: Server=<IP>;Database=<DB name>;User ID=<ID>;Password=<Password>;Encrypt=False
#    db_connection_string: