Skip to content

PDF report generator

The PDF Report generator (hereinafter referred to as the generator) is a service designed to create reports in PDF format based on scan data stored in the server part. It supports processing data from files in JSON format, as well as creating reports with the possibility of localization into various languages.

Deployment

Detailed information about deployment can be found in the following sections:

Configuration

The service configuration is set via environment variables. By default, these variables are set in the /etc/default/solidpoint-scan-report-generator file.

Variable Default value Description
STATE_DIRECTORY /tmp/reporter Directory for storing data
LOG_LEVEL info Logging level. Acceptable values: info, warn, error
LISTEN localhost:9090 Address of the gRPC service to be listened to by the server part

Warning

If a custom value is specified for the LISTEN environment variable, then the value for the REPORTER_ADDRESS variable of the server part must also be replaced with the value used.

Usage

The report generator listens to the address specified in the settings using the gRPC protocol. Interaction with the generator is performed using the HTTP API of the server part.

Note

For more information about the available HTTP API methods and their parameters, it is recommended to use the OpenAPI specification.

Notes

  1. The STATE_DIRECTORY variable is set automatically in systemd. If it is empty, then the generator will run in the /tmp/reporter directory by default.

    On launch, the generator will create the following directories in its working directory:

    • /intermediate — for storing intermediate and temporary files,
    • /reports — for storing (report) generation results.

    The generator deletes all intermediate files on launch, as well as immediately after generation.

  2. A standard installation from the deb package creates a special system user solidpoint-scan-report-generator.

  3. The generator cannot be launched by the root user (component restrictions). This must be taken into account when starting using containers.