Reporting Service
Overview
The reporting service is a Windows Service that provides automated processing for OpCon reporting data that is viewable and downloadable through Solution Manager. The service extracts data from the OpCon database, transforms it, and loads it into a dedicated Reporting database. This separate database improves performance by isolating reporting queries from the operational OpCon database.
The service processes OpCon reporting data immediately when the service starts and daily at 2:00AM.
This document describes the reporting service for on-premises Windows customers. The reporting service is also available to cloud users with additional features and can be configured within Solution Manager. For cloud configuration details, see Reporting Service Cloud Configuration.
Installation
The reporting service is installed automatically as part of the OpCon installer. No separate installation steps are required
The service executable is named ReportingService
Configuration
The service uses appsettings.json located in the service installation directory. This file contains:
- TimeZone - Set to your timezone
- Connection strings - Database connection information (encrypted passwords)
- OpConDb - Connection to the OpCon database (source data)
- ReportingDb - Connection to the Reporting database (target data)
- Logging settings - Log level configuration (recommended settings below)
Example appsettings.json:
{
"Scheduling": {
"TimeZone": "America/Chicago"
},
"ConnectionStrings": {
"OpConDb": "Server=localhost,1433;Database=OpConxps;User Id=sa;Password=<encrypted>;TrustServerCertificate=True",
"ReportingDb": "Server=localhost,1433;Database=Reporting;User Id=sa;Password=<encrypted>;TrustServerCertificate=True"
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.EntityFrameworkCore": "Warning"
}
}
}
Connection String Configuration Tool
The service supports a command-line configuration tool for securely setting up database connection strings:
ReportingService configure-connection --name OpConDb --server localhost --database OpConxps --user sa --password myPassword
Or with Windows Authentication:
ReportingService configure-connection --name OpConDb --server localhost --database OpConxps --winauth
Note: Passwords are automatically encrypted using Windows DPAPI (Data Protection API) and stored securely in appsettings.json. The encryption is machine-specific and user-specific.
Logging
The service writes logs to:
- Windows Event Log - For service level information
- File logs - Log files are located in a
logdirectory relative to the service installation path
Troubleshooting
Service Won't Start
- Check Windows Event Viewer for error messages
- Verify connection strings are properly configured in
appsettings.json - Ensure database servers are accessible
ETL Processes Not Running
- Check database connectivity (both OpConDb and ReportingDb)
- Review log files for error messages
Connection String Issues
- Use the
configure-connectioncommand to properly encrypt and set connection strings - Ensure the service is running under the same user account that encrypted the passwords (DPAPI is user-specific)
- For Windows Authentication, verify the service account has database access