Observability¶
Colectica Portal supports observability using both structured logs and OpenTelemetry. Structured log events are written for all REST API requests, page loads, and other user activities. Structured logs and OpenTelemetry can be imported into various log analysis systems.
Collect OpenTelemetry¶
OpenTelemetry reporting can be enabled by setting the OpenTelemetry:Enabled
settings in appsettings.json
.
The Colectica Repository will report OpenTelemetry for all HTTP client calls, Elasticsearch integration, database access,
and individual web requests. OpenTelemetry exporter options are controlled via the standard environmental variables.
For more details on editing these settings, see Configuration.
Structured Logs¶
Structured logs can be written to disk or POSTed to an HTTP end point.
To configure where structured logs are written, use the Serilog:StructuredDiskLocation
and Serilog:HttpLocation
settings in appsettings.json
.
For more details on editing these settings, see Configuration.
External Log Dashboards¶
If your logs are ingested into a log analysis system that provides a dashboard, you can
link to that dashboard from the Colectica Portal administration dashboard.
Use the Admin:ExternalDashboardUrl
setting in appsettings.json
to configure this.
For more details on editing these settings, see Configuration.
Elasticsearch, Logstash, and Kibana¶
One commonly used platform for ingesting, storing, and analyzing log files is the ELK stack: Elasticsearch, Logstash, and Kibana.
A sample Kibana dashboard configuration is included with the Colectica Portal package.
It can be found at PortalDir/Config/kibana-dashboard.json
.
For more information, see https://www.elastic.co/what-is/elk-stack.