Loading…
Loading…
A guide for daily operational tasks, including monitoring the operations dashboard, checking ingest health, updating service catalogs, and managing
This document provides a playbook for day-2 operations of the API platform, available since v1.0. It details the routine checks, monitoring surfaces, and maintenance tasks an operator performs to ensure platform health, manage capacity, and respond to events.
The core operational activities include:
Following these procedures helps maintain a stable and performant platform.
The Operations Dashboard is designed for high performance, providing sub-second load times even with very large data volumes. This is achieved by separating the data presentation layer from raw log processing.
The platform continuously processes raw traffic logs in the background, calculating and storing key metrics in dedicated aggregation tables. The dashboard exclusively queries these pre-computed tables, not the raw logs. This architecture ensures that the user interface remains fast and responsive, as it does not need to perform expensive computations on demand.
flowchart TD
subgraph "Data Ingest"
A[Raw Traffic Logs]
end
subgraph "Platform Backend"
B(Aggregation Process)
C[Pre-computed Aggregation Tables]
end
subgraph "User Interface"
D[Operations Dashboard]
end
A --> B
B -- Periodically computes KPIs --> C
C -- Serves fast queries --> DThe Operations Dashboard is the primary surface for daily health checks.
URL: https://<your-hostname>/dashboard/
The dashboard provides a consolidated view of platform-wide traffic and health. Key components include:
Filters:
f5 gateway-edge / runtime / bothinbound / outbound / bothKey Performance Indicators (KPIs):
Visualization Tiles:
gateway-edge traffic).From the dashboard, you can click on any service to navigate to a Service detail view, which shows per-operation metrics and provides a link to recent logs filtered by correlation ID.
Verifying that data is flowing into the platform and inspecting individual transactions are critical operational tasks.
The live traffic log provides a near-real-time stream of individual requests.
URL: https://<your-hostname>/observability/f5-live/ (for f5_modernization install profile)
NOTE
For other gateway-edge sources, the same data is available via the Observability → Log Search interface.
This view is useful for:
correlation ID.Each log entry includes the correlation ID, service URI, HTTP method, status code, request/response headers and payloads, and latency.
The dashboards and metrics rely on a continuous feed of data from traffic sources. To confirm that data is still being ingested, you can check the freshness of the raw ingest table.
Execute the following SQL query against the platform's database:
SELECT MAX(created_at) FROM s2r_f5_request_log;
If the returned timestamp is recent, data is flowing correctly. If the timestamp is stale, it indicates a problem with the data ingest pipeline.
As backend services evolve, the platform's service catalog must be updated.
The platform automatically aggregates discovered services from traffic on a 5-minute cycle. To force an immediate refresh, for example after a gateway configuration change, navigate to Discovery → Refresh. This action re-aggregates data from the recent time window to identify new services.
When an API publisher releases a new WSDL for a SOAP-based service, follow these steps to update the service definition:
IMPORTANT
Publishing a new revision does not automatically route traffic to it. Existing API consumers continue to use the prior revision until you explicitly set the new one as the default.
To roll back to a previous version, navigate to Services → [Your Service] → Revisions, select the desired prior revision, and click Make default.
Global platform settings are managed from the Settings page.
URL: https://<your-hostname>/settings/
The following settings are available for viewing or configuration:
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
Auth mode | String (read-only) | — | N/A | Displays the current authentication mode: pristine (first boot), protected (normal RBAC), or recovery (operator bootstrap). |
Install profile | String | — | No | The installation profile (f5_modernization, generic, or both). Changing this does not affect existing services. |
Topology labels | Array of Strings | — | No | Free-text labels (e.g., prod, staging) used for filtering in audit and structured logs. |
Excluded consumer IP ranges | Array of CIDR Strings | — | No | A list of IP address ranges in CIDR notation to exclude from traffic aggregation. Use this to prevent internal health checks or synthetic monitoring from skewing dashboard metrics. |
Retention | Integer (days) | 60 | No | The number of days to retain the raw traffic archive. |
License | Object | — | N/A | Displays license status, edition, expiry, and service usage. Includes an interface for uploading a renewal token. |
The platform includes a mechanism for managing software updates.
URL: https://<your-hostname>/settings/updates/
The platform checks for available updates daily. The Updates tab displays the current version, any available newer versions, and associated release notes. You can configure the update mode:
manual (Default): An operator must approve each update before it is applied. This mode is recommended for production environments to ensure updates are applied during planned maintenance windows.automatic: Updates are applied automatically within a configured maintenance window.The update process is designed to be robust, including pulling new images, running database migrations, performing a rolling restart of services, verifying the health of each new revision, and automatically rolling back if a failure is detected.
The platform is engineered to handle a baseline of approximately 1 million calls per day (~12 requests/second sustained, with bursts up to ~100 rps). To ensure you have sufficient capacity, monitor the following indicators:
min-instances ≥ 1 on Cloud Run, ≥ 1 replica on Helm). For sustained high throughput, scale the runtime horizontally by increasing the number of instances.manual mode, schedule a maintenance window to apply them.SELECT MAX(created_at) FROM s2r_f5_request_log;.If you encounter issues during operations, refer to the following conditions mentioned in the source:
troubleshooting.md#ingest-stopped-flowing.troubleshooting.md#update-applied-but-service-wont-start.