diff --git a/oas_docs/output/kibana.serverless.yaml b/oas_docs/output/kibana.serverless.yaml index d397f383d7358..1c76a588fd46a 100644 --- a/oas_docs/output/kibana.serverless.yaml +++ b/oas_docs/output/kibana.serverless.yaml @@ -147,6 +147,11 @@ tags: x-displayName: System description: | Get information about the system status, resource usage, and installed plugins. + - externalDocs: + description: Task manager + url: https://www.elastic.co/guide/en/kibana/current/task-manager-production-considerations.html + name: task manager + x-displayName: Task manager paths: /api/actions/connector_types: get: @@ -42589,7 +42594,28 @@ paths: tags: - streams x-state: Technical Preview +<<<<<<< HEAD >>>>>>> bce77d761a3 ([DOCS] Removes Serverless API x-beta overlay (#215587)) +======= + /api/task_manager/_health: + get: + description: | + Get the health status of the Kibana task manager. + operationId: task-manager-health + responses: + '200': + content: + application/json: + examples: + taskManagerHealthResponse1: + $ref: '#/components/examples/Task_manager_health_Serverless_APIs_health_200response_serverless' + schema: + $ref: '#/components/schemas/Task_manager_health_Serverless_APIs_health_response_serverless' + description: Indicates a successful call + summary: Get the task manager health + tags: + - task manager +>>>>>>> c9bfa082a07 ([DOCS] Add minimal task manager health APIs (#213862)) /api/timeline: delete: description: Delete one or more Timelines or Timeline templates. @@ -45316,6 +45342,305 @@ components: icon: indexPatternApp title: Kibana Sample Data Logs type: index-pattern + Task_manager_health_Serverless_APIs_health_200response_serverless: + description: A successful response from `GET api/task_manager/_health`. + value: |- + { + "id": "b44483e1-3ba2-4f28-93d0-1d96c69c32c1", + "timestamp": "2025-03-21T21:49:50.409Z", + "status": "OK", + "last_update": "2025-03-21T21:48:53.996Z", + "stats": { + "configuration": { + "timestamp": "2025-03-21T21:47:51.663Z", + "value": { + "request_capacity": 1000, + "monitored_aggregated_stats_refresh_rate": 60000, + "monitored_stats_running_average_window": 50, + "monitored_task_execution_thresholds": { + "custom": {}, + "default": { + "error_threshold": 90, + "warn_threshold": 80 + } + }, + "claim_strategy": "mget", + "poll_interval": 500, + "capacity": { + "config": 10, + "as_workers": 10, + "as_cost": 20 + } + }, + "status": "OK" + }, + "workload": { + "timestamp": "2025-03-21T21:48:53.996Z", + "value": { + "count": 21, + "cost": 42, + "task_types": { + "Fleet-Metrics-Task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Logger": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Sender": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "ML:saved-objects-sync": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions:connector_usage_reporting": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_health_check": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerts_invalidate_api_keys": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "cases-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "dashboard_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:automatic-agent-upgrade-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:check-deleted-files-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:delete-unenrolled-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:sync-integrations-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:unenroll-inactive-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:upgrade-agentless-deployments-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "logs-data-telemetry": { + "count": 1, + "cost": 2, + "status": { + "running": 1 + } + }, + "session_cleanup": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:delete_inactive_background_task_nodes": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + } + }, + "non_recurring": 1, + "non_recurring_cost": 2, + "schedule": [ + [ + "1m", + 2 + ], + [ + "5m", + 2 + ], + [ + "10m", + 1 + ], + [ + "15m", + 1 + ], + [ + "30m", + 1 + ], + [ + "1h", + 5 + ], + [ + "3600s", + 1 + ], + [ + "60m", + 1 + ], + [ + "720m", + 1 + ], + [ + "1d", + 4 + ], + [ + "1440m", + 1 + ] + ], + "overdue": 0, + "overdue_cost": 0, + "overdue_non_recurring": 0, + "estimated_schedule_density": [ + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "capacity_requirements": { + "per_minute": 2, + "per_hour": 43, + "per_day": 7 + } + }, + "status": "OK" + } + } + } get_connector_types_generativeai_response: summary: A list of connector types for the `generativeAI` feature. value: @@ -60079,6 +60404,33 @@ components: $ref: '#/components/schemas/SLOs_time_window' title: Update SLO request type: object + Task_manager_health_Serverless_APIs_configuration: + description: | + This object summarizes the current configuration of Task Manager. This includes dynamic configurations that change over time, such as `poll_interval` and `max_workers`, which can adjust in reaction to changing load on the system. + type: object + Task_manager_health_Serverless_APIs_health_response_serverless: + title: Task health response properties + type: object + properties: + id: + type: string + last_update: + type: string + stats: + type: object + properties: + configuration: + $ref: '#/components/schemas/Task_manager_health_Serverless_APIs_configuration' + workload: + $ref: '#/components/schemas/Task_manager_health_Serverless_APIs_workload' + status: + type: string + timestamp: + type: string + Task_manager_health_Serverless_APIs_workload: + description: | + This object summarizes the work load across the cluster, including the tasks in the system, their types, and current status. + type: object bedrock_config: title: Connector request properties for an Amazon Bedrock connector description: Defines properties for connectors when type is `.bedrock`. diff --git a/oas_docs/output/kibana.yaml b/oas_docs/output/kibana.yaml index d4dc1dfaa68a0..810b9c93c9854 100644 --- a/oas_docs/output/kibana.yaml +++ b/oas_docs/output/kibana.yaml @@ -223,6 +223,11 @@ tags: x-displayName: System description: | Get information about the system status, resource usage, features, and installed plugins. + - externalDocs: + description: Task manager + url: https://www.elastic.co/guide/en/kibana/current/task-manager-production-considerations.html + name: task manager + x-displayName: Task manager - description: Check the upgrade status of your Elasticsearch cluster and reindex indices that were created in the previous major version. The assistant helps you prepare for the next major version of Elasticsearch. name: upgrade x-displayName: Upgrade assistant @@ -22430,6 +22435,24 @@ paths: summary: Get Kibana's current status tags: - system + /api/task_manager/_health: + get: + description: | + Get the health status of the Kibana task manager. + operationId: task-manager-health + responses: + '200': + content: + application/json: + examples: + taskManagerHealthResponse1: + $ref: '#/components/examples/Task_manager_health_APIs_health_200response' + schema: + $ref: '#/components/schemas/Task_manager_health_APIs_health_response' + description: Indicates a successful call + summary: Get the task manager health + tags: + - task manager /api/timeline: delete: description: Delete one or more Timelines or Timeline templates. @@ -26820,6 +26843,1230 @@ components: icon: dashboardApp title: Look at my dashboard type: dashboard + Task_manager_health_APIs_health_200response: + description: A successful response from `GET api/task_manager/_health`. + value: |- + { + "id": "330bbc6a-56cd-44d5-88e3-e3229f14d619", + "timestamp": "2025-03-21T21:30:04.780Z", + "status": "OK", + "last_update": "2025-03-21T21:30:04.455Z", + "stats": { + "configuration": { + "timestamp": "2025-03-21T21:26:10.002Z", + "value": { + "request_capacity": 1000, + "monitored_aggregated_stats_refresh_rate": 60000, + "monitored_stats_running_average_window": 50, + "monitored_task_execution_thresholds": { + "custom": {}, + "default": { + "error_threshold": 90, + "warn_threshold": 80 + } + }, + "claim_strategy": "mget", + "poll_interval": 500, + "capacity": { + "config": 10, + "as_workers": 10, + "as_cost": 20 + } + }, + "status": "OK" + }, + "runtime": { + "timestamp": "2025-03-21T21:30:04.455Z", + "value": { + "polling": { + "last_successful_poll": "2025-03-21T21:30:04.455Z", + "last_polling_delay": "2025-03-21T21:26:10.001Z", + "claim_duration": { + "p50": 17, + "p90": 22, + "p95": 25, + "p99": 27 + }, + "duration": { + "p50": 19, + "p90": 25.5, + "p95": 28, + "p99": 28 + }, + "claim_conflicts": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "claim_mismatches": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "claim_stale_tasks": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "result_frequency_percent_as_number": { + "Failed": 0, + "NoAvailableWorkers": 0, + "NoTasksClaimed": 100, + "RanOutOfCapacity": 0, + "RunningAtCapacity": 0, + "PoolFilled": 0 + }, + "persistence": { + "recurring": 88, + "non_recurring": 12 + } + }, + "drift": { + "p50": 2089, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "drift_by_type": { + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "p50": 2082, + "p90": 2082, + "p95": 2082, + "p99": 2082 + }, + "fleet:check-deleted-files-task": { + "p50": 2080, + "p90": 2080, + "p95": 2080, + "p99": 2080 + }, + "osquery:telemetry-saved-queries": { + "p50": 2080, + "p90": 2080, + "p95": 2080, + "p99": 2080 + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "p50": 2089, + "p90": 2089, + "p95": 2089, + "p99": 2089 + }, + "task_manager:delete_inactive_background_task_nodes": { + "p50": 336.5, + "p90": 2089, + "p95": 2089, + "p99": 2089 + }, + "alerts_invalidate_api_keys": { + "p50": 2086, + "p90": 2086, + "p95": 2086, + "p99": 2086 + }, + "fleet:unenroll-inactive-agents-task": { + "p50": 2080, + "p90": 2080, + "p95": 2080, + "p99": 2080 + }, + "alerting_health_check": { + "p50": 2086, + "p90": 2086, + "p95": 2086, + "p99": 2086 + }, + "Fleet-Usage-Sender": { + "p50": 2079, + "p90": 2079, + "p95": 2079, + "p99": 2079 + }, + "security:endpoint-diagnostics": { + "p50": 2525, + "p90": 2525, + "p95": 2525, + "p99": 2525 + }, + "logs-data-telemetry": { + "p50": 2525, + "p90": 2525, + "p95": 2525, + "p99": 2525 + }, + "security:telemetry-lists": { + "p50": 2525, + "p90": 2525, + "p95": 2525, + "p99": 2525 + }, + "security:telemetry-timelines": { + "p50": 2526, + "p90": 2526, + "p95": 2526, + "p99": 2526 + }, + "cases-telemetry-task": { + "p50": 2083, + "p90": 2083, + "p95": 2083, + "p99": 2083 + }, + "osquery:telemetry-packs": { + "p50": 2530, + "p90": 2530, + "p95": 2530, + "p99": 2530 + }, + "Fleet-Metrics-Task": { + "p50": 133.5, + "p90": 2530, + "p95": 2530, + "p99": 2530 + }, + "fleet:delete-unenrolled-agents-task": { + "p50": 2530, + "p90": 2530, + "p95": 2530, + "p99": 2530 + }, + "osquery:telemetry-configs": { + "p50": 2529, + "p90": 2529, + "p95": 2529, + "p99": 2529 + }, + "endpoint:complete-external-response-actions": { + "p50": 519, + "p90": 2526, + "p95": 2526, + "p99": 2526 + }, + "security:telemetry-detection-rules": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-prebuilt-rule-alerts": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:endpoint-meta-telemetry": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-filterlist-artifact": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-diagnostic-timelines": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-configuration": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:indices-metadata-telemetry": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "Fleet-Usage-Logger": { + "p50": 2190, + "p90": 2190, + "p95": 2190, + "p99": 2190 + }, + "obs-ai-assistant:knowledge-base-migration": { + "p50": 2189, + "p90": 2189, + "p95": 2189, + "p99": 2189 + }, + "dashboard_telemetry": { + "p50": 2452, + "p90": 2452, + "p95": 2452, + "p99": 2452 + }, + "session_cleanup": { + "p50": 2569, + "p90": 2569, + "p95": 2569, + "p99": 2569 + }, + "ProductDocBase:EnsureUpToDate": { + "p50": 2452, + "p90": 2452, + "p95": 2452, + "p99": 2452 + }, + "apm-telemetry-task": { + "p50": 2591, + "p90": 2591, + "p95": 2591, + "p99": 2591 + }, + "ML:saved-objects-sync": { + "p50": 2475, + "p90": 2475, + "p95": 2475, + "p99": 2475 + }, + "apm-source-map-migration-task": { + "p50": 1603.5, + "p90": 2987, + "p95": 2987, + "p99": 2987 + }, + "actions_telemetry": { + "p50": 771, + "p90": 771, + "p95": 771, + "p99": 771 + }, + "alerting_telemetry": { + "p50": 768, + "p90": 768, + "p95": 768, + "p99": 768 + }, + "endpoint:metadata-check-transforms-task": { + "p50": 834, + "p90": 834, + "p95": 834, + "p99": 834 + }, + "endpoint:user-artifact-packager": { + "p50": 529.5, + "p90": 835, + "p95": 835, + "p99": 835 + }, + "fleet:bump_agent_policies": { + "p50": 361, + "p90": 361, + "p95": 361, + "p99": 361 + } + }, + "load": { + "p50": 10, + "p90": 100, + "p95": 100, + "p99": 100 + }, + "execution": { + "duration": { + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "p50": 24, + "p90": 24, + "p95": 24, + "p99": 24 + }, + "fleet:check-deleted-files-task": { + "p50": 24, + "p90": 24, + "p95": 24, + "p99": 24 + }, + "osquery:telemetry-saved-queries": { + "p50": 25, + "p90": 25, + "p95": 25, + "p99": 25 + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "p50": 28, + "p90": 28, + "p95": 28, + "p99": 28 + }, + "task_manager:delete_inactive_background_task_nodes": { + "p50": 7.5, + "p90": 29, + "p95": 29, + "p99": 29 + }, + "alerts_invalidate_api_keys": { + "p50": 34, + "p90": 34, + "p95": 34, + "p99": 34 + }, + "fleet:unenroll-inactive-agents-task": { + "p50": 39, + "p90": 39, + "p95": 39, + "p99": 39 + }, + "alerting_health_check": { + "p50": 42, + "p90": 42, + "p95": 42, + "p99": 42 + }, + "Fleet-Usage-Sender": { + "p50": 78, + "p90": 78, + "p95": 78, + "p99": 78 + }, + "security:endpoint-diagnostics": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "logs-data-telemetry": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-lists": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-timelines": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "cases-telemetry-task": { + "p50": 458, + "p90": 458, + "p95": 458, + "p99": 458 + }, + "osquery:telemetry-packs": { + "p50": 10, + "p90": 10, + "p95": 10, + "p99": 10 + }, + "Fleet-Metrics-Task": { + "p50": 5, + "p90": 10, + "p95": 10, + "p99": 10 + }, + "fleet:delete-unenrolled-agents-task": { + "p50": 11, + "p90": 11, + "p95": 11, + "p99": 11 + }, + "osquery:telemetry-configs": { + "p50": 12, + "p90": 12, + "p95": 12, + "p99": 12 + }, + "endpoint:complete-external-response-actions": { + "p50": 7, + "p90": 11, + "p95": 11, + "p99": 11 + }, + "security:telemetry-detection-rules": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-prebuilt-rule-alerts": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:endpoint-meta-telemetry": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-filterlist-artifact": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:telemetry-diagnostic-timelines": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:telemetry-configuration": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:indices-metadata-telemetry": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "Fleet-Usage-Logger": { + "p50": 18, + "p90": 18, + "p95": 18, + "p99": 18 + }, + "obs-ai-assistant:knowledge-base-migration": { + "p50": 8, + "p90": 8, + "p95": 8, + "p99": 8 + }, + "dashboard_telemetry": { + "p50": 12, + "p90": 12, + "p95": 12, + "p99": 12 + }, + "session_cleanup": { + "p50": 58, + "p90": 58, + "p95": 58, + "p99": 58 + }, + "ProductDocBase:EnsureUpToDate": { + "p50": 147, + "p90": 147, + "p95": 147, + "p99": 147 + }, + "apm-telemetry-task": { + "p50": 543, + "p90": 543, + "p95": 543, + "p99": 543 + }, + "ML:saved-objects-sync": { + "p50": 544, + "p90": 544, + "p95": 544, + "p99": 544 + }, + "apm-source-map-migration-task": { + "p50": 1649, + "p90": 3282, + "p95": 3282, + "p99": 3282 + }, + "actions_telemetry": { + "p50": 19, + "p90": 19, + "p95": 19, + "p99": 19 + }, + "alerting_telemetry": { + "p50": 64, + "p90": 64, + "p95": 64, + "p99": 64 + }, + "endpoint:metadata-check-transforms-task": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "endpoint:user-artifact-packager": { + "p50": 10, + "p90": 13, + "p95": 13, + "p99": 13 + }, + "fleet:bump_agent_policies": { + "p50": 9, + "p90": 9, + "p95": 9, + "p99": 9 + } + }, + "duration_by_persistence": { + "recurring": { + "p50": 9, + "p90": 63.39999999999999, + "p95": 474.99999999999966, + "p99": 544 + }, + "non_recurring": { + "p50": 14, + "p90": 2968.500000000001, + "p95": 3282, + "p99": 3282 + } + }, + "persistence": { + "recurring": 88, + "non_recurring": 12 + }, + "result_frequency_percent_as_number": { + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:check-deleted-files-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-saved-queries": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "task_manager:delete_inactive_background_task_nodes": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerts_invalidate_api_keys": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:unenroll-inactive-agents-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerting_health_check": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Usage-Sender": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:endpoint-diagnostics": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "logs-data-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-lists": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-timelines": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "cases-telemetry-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-packs": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Metrics-Task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:delete-unenrolled-agents-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-configs": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:complete-external-response-actions": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-detection-rules": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-prebuilt-rule-alerts": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:endpoint-meta-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-filterlist-artifact": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-diagnostic-timelines": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-configuration": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:indices-metadata-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Usage-Logger": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "obs-ai-assistant:knowledge-base-migration": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "dashboard_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "session_cleanup": { + "Success": 0, + "RetryScheduled": 100, + "Failed": 0, + "status": "OK" + }, + "ProductDocBase:EnsureUpToDate": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "apm-telemetry-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "ML:saved-objects-sync": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "apm-source-map-migration-task": { + "Success": 50, + "RetryScheduled": 50, + "Failed": 0, + "status": "OK" + }, + "actions_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerting_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:metadata-check-transforms-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:user-artifact-packager": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:bump_agent_policies": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + } + } + } + }, + "status": "OK" + }, + "workload": { + "timestamp": "2025-03-21T21:29:10.367Z", + "value": { + "count": 35, + "cost": 70, + "task_types": { + "Fleet-Metrics-Task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Logger": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Sender": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "ML:saved-objects-sync": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_health_check": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerts_invalidate_api_keys": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "apm-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "cases-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "dashboard_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:complete-external-response-actions": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:metadata-check-transforms-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:user-artifact-packager": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:check-deleted-files-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:delete-unenrolled-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:unenroll-inactive-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "logs-data-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-configs": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-packs": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-saved-queries": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:endpoint-diagnostics": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:endpoint-meta-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:indices-metadata-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-configuration": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-detection-rules": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-diagnostic-timelines": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-filterlist-artifact": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-lists": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-prebuilt-rule-alerts": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-timelines": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "session_cleanup": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:delete_inactive_background_task_nodes": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + } + }, + "non_recurring": 1, + "non_recurring_cost": 2, + "schedule": [ + [ + "1m", + 2 + ], + [ + "60s", + 2 + ], + [ + "5m", + 2 + ], + [ + "10m", + 1 + ], + [ + "15m", + 1 + ], + [ + "45m", + 1 + ], + [ + "1h", + 9 + ], + [ + "3600s", + 1 + ], + [ + "60m", + 1 + ], + [ + "2h", + 1 + ], + [ + "720m", + 2 + ], + [ + "24h", + 7 + ], + [ + "1d", + 3 + ], + [ + "1440m", + 1 + ] + ], + "overdue": 0, + "overdue_cost": 0, + "overdue_non_recurring": 0, + "estimated_schedule_density": [ + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "capacity_requirements": { + "per_minute": 4, + "per_hour": 46, + "per_day": 27 + } + }, + "status": "OK" + }, + "capacity_estimation": { + "status": "OK", + "reason": "Task Manager is healthy, the assumedRequiredThroughputPerMinutePerKibana (148.78541666666666) < capacityPerMinutePerKibana (1200)", + "timestamp": "2025-03-21T21:30:04.780Z", + "value": { + "observed": { + "observed_kibana_instances": 1, + "max_throughput_per_minute_per_kibana": 1200, + "max_throughput_per_minute": 1200, + "minutes_to_drain_overdue": 0, + "avg_recurring_required_throughput_per_minute": 5, + "avg_recurring_required_throughput_per_minute_per_kibana": 5, + "avg_required_throughput_per_minute": 149, + "avg_required_throughput_per_minute_per_kibana": 149 + }, + "proposed": { + "provisioned_kibana": 2, + "min_required_kibana": 1, + "avg_recurring_required_throughput_per_minute_per_kibana": 3, + "avg_required_throughput_per_minute_per_kibana": 75 + } + } + } + } + } get_connector_types_generativeai_response: summary: A list of connector types for the `generativeAI` feature. value: @@ -44585,6 +45832,41 @@ components: $ref: '#/components/schemas/SLOs_time_window' title: Update SLO request type: object + Task_manager_health_APIs_configuration: + description: | + This object summarizes the current configuration of Task Manager. This includes dynamic configurations that change over time, such as `poll_interval` and `max_workers`, which can adjust in reaction to changing load on the system. + type: object + Task_manager_health_APIs_health_response: + title: Task health response properties + type: object + properties: + id: + type: string + last_update: + type: string + stats: + type: object + properties: + capacity_estimation: + description: | + This object provides a rough estimate about the sufficiency of its capacity. These are estimates based on historical data and should not be used as predictions. + type: object + configuration: + $ref: '#/components/schemas/Task_manager_health_APIs_configuration' + runtime: + description: | + This object tracks runtime performance of Task Manager, tracking task drift, worker load, and stats broken down by type, including duration and run results. + type: object + workload: + $ref: '#/components/schemas/Task_manager_health_APIs_workload' + status: + type: string + timestamp: + type: string + Task_manager_health_APIs_workload: + description: | + This object summarizes the work load across the cluster, including the tasks in the system, their types, and current status. + type: object Upgrade_assistant_APIs_errorMessage: description: The error that caused the reindex to fail, if it failed. type: string diff --git a/oas_docs/scripts/merge_ess_oas.js b/oas_docs/scripts/merge_ess_oas.js index d9e22889a6535..9a58686b73f57 100644 --- a/oas_docs/scripts/merge_ess_oas.js +++ b/oas_docs/scripts/merge_ess_oas.js @@ -25,6 +25,7 @@ const { REPO_ROOT } = require('@kbn/repo-info'); `${REPO_ROOT}/x-pack/platform/plugins/shared/security/docs/openapi/user_session_apis.yaml`, `${REPO_ROOT}/src/platform/plugins/shared/share/docs/openapi/short_url_apis.yaml`, `${REPO_ROOT}/x-pack/platform/plugins/private/logstash/docs/openapi/logstash_apis.yaml`, + `${REPO_ROOT}/x-pack/platform/plugins/shared/task_manager/docs/openapi/bundled.yaml`, // Observability Solution `${REPO_ROOT}/x-pack/solutions/observability/plugins/apm/docs/openapi/apm/bundled.yaml`, diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/README.md b/x-pack/platform/plugins/shared/task_manager/docs/openapi/README.md new file mode 100644 index 0000000000000..45fed9bc9ea2a --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/README.md @@ -0,0 +1,21 @@ +# OpenAPI (Experimental) + +The current self-contained spec file can be used for online tools like those found at https://openapi.tools/. This spec is experimental and may be incomplete or change later. + +A guide about the openApi specification can be found at [https://swagger.io/docs/specification/about/](https://swagger.io/docs/specification/about/). + +## The `openapi` folder + +* `entrypoint*.yaml` are the overview files that pull together all the components and examples. +* `components`: Reusable components + +## Tools + +Generate the `bundled` files by running the following commands: + +```bash +npx @redocly/cli bundle entrypoint.yaml --output bundled.yaml --ext yaml +npx @redocly/cli bundle entrypoint_serverless.yaml --output bundled_serverless.yaml --ext yaml +``` + +These files are joined with the rest of the Kibana APIs per `oas_docs/README.md` diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/bundled.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/bundled.yaml new file mode 100644 index 0000000000000..1b21cc16d4d60 --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/bundled.yaml @@ -0,0 +1,1297 @@ +openapi: 3.0.3 +info: + title: Task manager health APIs + description: Kibana APIs for the task manager feature + version: 1.0.0 + license: + name: Elastic License 2.0 + url: https://www.elastic.co/licensing/elastic-license +servers: + - url: / +tags: + - name: task manager + x-displayName: Task manager + externalDocs: + url: https://www.elastic.co/guide/en/kibana/current/task-manager-production-considerations.html + description: Task manager +paths: + /api/task_manager/_health: + get: + summary: Get the task manager health + description: | + Get the health status of the Kibana task manager. + operationId: task-manager-health + tags: + - task manager + responses: + '200': + description: Indicates a successful call + content: + application/json: + schema: + $ref: '#/components/schemas/health_response' + examples: + taskManagerHealthResponse1: + $ref: '#/components/examples/health_200response' +components: + schemas: + configuration: + type: object + description: | + This object summarizes the current configuration of Task Manager. This includes dynamic configurations that change over time, such as `poll_interval` and `max_workers`, which can adjust in reaction to changing load on the system. + workload: + type: object + description: | + This object summarizes the work load across the cluster, including the tasks in the system, their types, and current status. + health_response: + title: Task health response properties + type: object + properties: + id: + type: string + last_update: + type: string + stats: + type: object + properties: + capacity_estimation: + type: object + description: | + This object provides a rough estimate about the sufficiency of its capacity. These are estimates based on historical data and should not be used as predictions. + configuration: + $ref: '#/components/schemas/configuration' + runtime: + type: object + description: | + This object tracks runtime performance of Task Manager, tracking task drift, worker load, and stats broken down by type, including duration and run results. + workload: + $ref: '#/components/schemas/workload' + status: + type: string + timestamp: + type: string + examples: + health_200response: + description: A successful response from `GET api/task_manager/_health`. + value: |- + { + "id": "330bbc6a-56cd-44d5-88e3-e3229f14d619", + "timestamp": "2025-03-21T21:30:04.780Z", + "status": "OK", + "last_update": "2025-03-21T21:30:04.455Z", + "stats": { + "configuration": { + "timestamp": "2025-03-21T21:26:10.002Z", + "value": { + "request_capacity": 1000, + "monitored_aggregated_stats_refresh_rate": 60000, + "monitored_stats_running_average_window": 50, + "monitored_task_execution_thresholds": { + "custom": {}, + "default": { + "error_threshold": 90, + "warn_threshold": 80 + } + }, + "claim_strategy": "mget", + "poll_interval": 500, + "capacity": { + "config": 10, + "as_workers": 10, + "as_cost": 20 + } + }, + "status": "OK" + }, + "runtime": { + "timestamp": "2025-03-21T21:30:04.455Z", + "value": { + "polling": { + "last_successful_poll": "2025-03-21T21:30:04.455Z", + "last_polling_delay": "2025-03-21T21:26:10.001Z", + "claim_duration": { + "p50": 17, + "p90": 22, + "p95": 25, + "p99": 27 + }, + "duration": { + "p50": 19, + "p90": 25.5, + "p95": 28, + "p99": 28 + }, + "claim_conflicts": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "claim_mismatches": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "claim_stale_tasks": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "result_frequency_percent_as_number": { + "Failed": 0, + "NoAvailableWorkers": 0, + "NoTasksClaimed": 100, + "RanOutOfCapacity": 0, + "RunningAtCapacity": 0, + "PoolFilled": 0 + }, + "persistence": { + "recurring": 88, + "non_recurring": 12 + } + }, + "drift": { + "p50": 2089, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "drift_by_type": { + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "p50": 2082, + "p90": 2082, + "p95": 2082, + "p99": 2082 + }, + "fleet:check-deleted-files-task": { + "p50": 2080, + "p90": 2080, + "p95": 2080, + "p99": 2080 + }, + "osquery:telemetry-saved-queries": { + "p50": 2080, + "p90": 2080, + "p95": 2080, + "p99": 2080 + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "p50": 2089, + "p90": 2089, + "p95": 2089, + "p99": 2089 + }, + "task_manager:delete_inactive_background_task_nodes": { + "p50": 336.5, + "p90": 2089, + "p95": 2089, + "p99": 2089 + }, + "alerts_invalidate_api_keys": { + "p50": 2086, + "p90": 2086, + "p95": 2086, + "p99": 2086 + }, + "fleet:unenroll-inactive-agents-task": { + "p50": 2080, + "p90": 2080, + "p95": 2080, + "p99": 2080 + }, + "alerting_health_check": { + "p50": 2086, + "p90": 2086, + "p95": 2086, + "p99": 2086 + }, + "Fleet-Usage-Sender": { + "p50": 2079, + "p90": 2079, + "p95": 2079, + "p99": 2079 + }, + "security:endpoint-diagnostics": { + "p50": 2525, + "p90": 2525, + "p95": 2525, + "p99": 2525 + }, + "logs-data-telemetry": { + "p50": 2525, + "p90": 2525, + "p95": 2525, + "p99": 2525 + }, + "security:telemetry-lists": { + "p50": 2525, + "p90": 2525, + "p95": 2525, + "p99": 2525 + }, + "security:telemetry-timelines": { + "p50": 2526, + "p90": 2526, + "p95": 2526, + "p99": 2526 + }, + "cases-telemetry-task": { + "p50": 2083, + "p90": 2083, + "p95": 2083, + "p99": 2083 + }, + "osquery:telemetry-packs": { + "p50": 2530, + "p90": 2530, + "p95": 2530, + "p99": 2530 + }, + "Fleet-Metrics-Task": { + "p50": 133.5, + "p90": 2530, + "p95": 2530, + "p99": 2530 + }, + "fleet:delete-unenrolled-agents-task": { + "p50": 2530, + "p90": 2530, + "p95": 2530, + "p99": 2530 + }, + "osquery:telemetry-configs": { + "p50": 2529, + "p90": 2529, + "p95": 2529, + "p99": 2529 + }, + "endpoint:complete-external-response-actions": { + "p50": 519, + "p90": 2526, + "p95": 2526, + "p99": 2526 + }, + "security:telemetry-detection-rules": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-prebuilt-rule-alerts": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:endpoint-meta-telemetry": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-filterlist-artifact": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-diagnostic-timelines": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-configuration": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:indices-metadata-telemetry": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "Fleet-Usage-Logger": { + "p50": 2190, + "p90": 2190, + "p95": 2190, + "p99": 2190 + }, + "obs-ai-assistant:knowledge-base-migration": { + "p50": 2189, + "p90": 2189, + "p95": 2189, + "p99": 2189 + }, + "dashboard_telemetry": { + "p50": 2452, + "p90": 2452, + "p95": 2452, + "p99": 2452 + }, + "session_cleanup": { + "p50": 2569, + "p90": 2569, + "p95": 2569, + "p99": 2569 + }, + "ProductDocBase:EnsureUpToDate": { + "p50": 2452, + "p90": 2452, + "p95": 2452, + "p99": 2452 + }, + "apm-telemetry-task": { + "p50": 2591, + "p90": 2591, + "p95": 2591, + "p99": 2591 + }, + "ML:saved-objects-sync": { + "p50": 2475, + "p90": 2475, + "p95": 2475, + "p99": 2475 + }, + "apm-source-map-migration-task": { + "p50": 1603.5, + "p90": 2987, + "p95": 2987, + "p99": 2987 + }, + "actions_telemetry": { + "p50": 771, + "p90": 771, + "p95": 771, + "p99": 771 + }, + "alerting_telemetry": { + "p50": 768, + "p90": 768, + "p95": 768, + "p99": 768 + }, + "endpoint:metadata-check-transforms-task": { + "p50": 834, + "p90": 834, + "p95": 834, + "p99": 834 + }, + "endpoint:user-artifact-packager": { + "p50": 529.5, + "p90": 835, + "p95": 835, + "p99": 835 + }, + "fleet:bump_agent_policies": { + "p50": 361, + "p90": 361, + "p95": 361, + "p99": 361 + } + }, + "load": { + "p50": 10, + "p90": 100, + "p95": 100, + "p99": 100 + }, + "execution": { + "duration": { + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "p50": 24, + "p90": 24, + "p95": 24, + "p99": 24 + }, + "fleet:check-deleted-files-task": { + "p50": 24, + "p90": 24, + "p95": 24, + "p99": 24 + }, + "osquery:telemetry-saved-queries": { + "p50": 25, + "p90": 25, + "p95": 25, + "p99": 25 + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "p50": 28, + "p90": 28, + "p95": 28, + "p99": 28 + }, + "task_manager:delete_inactive_background_task_nodes": { + "p50": 7.5, + "p90": 29, + "p95": 29, + "p99": 29 + }, + "alerts_invalidate_api_keys": { + "p50": 34, + "p90": 34, + "p95": 34, + "p99": 34 + }, + "fleet:unenroll-inactive-agents-task": { + "p50": 39, + "p90": 39, + "p95": 39, + "p99": 39 + }, + "alerting_health_check": { + "p50": 42, + "p90": 42, + "p95": 42, + "p99": 42 + }, + "Fleet-Usage-Sender": { + "p50": 78, + "p90": 78, + "p95": 78, + "p99": 78 + }, + "security:endpoint-diagnostics": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "logs-data-telemetry": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-lists": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-timelines": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "cases-telemetry-task": { + "p50": 458, + "p90": 458, + "p95": 458, + "p99": 458 + }, + "osquery:telemetry-packs": { + "p50": 10, + "p90": 10, + "p95": 10, + "p99": 10 + }, + "Fleet-Metrics-Task": { + "p50": 5, + "p90": 10, + "p95": 10, + "p99": 10 + }, + "fleet:delete-unenrolled-agents-task": { + "p50": 11, + "p90": 11, + "p95": 11, + "p99": 11 + }, + "osquery:telemetry-configs": { + "p50": 12, + "p90": 12, + "p95": 12, + "p99": 12 + }, + "endpoint:complete-external-response-actions": { + "p50": 7, + "p90": 11, + "p95": 11, + "p99": 11 + }, + "security:telemetry-detection-rules": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-prebuilt-rule-alerts": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:endpoint-meta-telemetry": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-filterlist-artifact": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:telemetry-diagnostic-timelines": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:telemetry-configuration": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:indices-metadata-telemetry": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "Fleet-Usage-Logger": { + "p50": 18, + "p90": 18, + "p95": 18, + "p99": 18 + }, + "obs-ai-assistant:knowledge-base-migration": { + "p50": 8, + "p90": 8, + "p95": 8, + "p99": 8 + }, + "dashboard_telemetry": { + "p50": 12, + "p90": 12, + "p95": 12, + "p99": 12 + }, + "session_cleanup": { + "p50": 58, + "p90": 58, + "p95": 58, + "p99": 58 + }, + "ProductDocBase:EnsureUpToDate": { + "p50": 147, + "p90": 147, + "p95": 147, + "p99": 147 + }, + "apm-telemetry-task": { + "p50": 543, + "p90": 543, + "p95": 543, + "p99": 543 + }, + "ML:saved-objects-sync": { + "p50": 544, + "p90": 544, + "p95": 544, + "p99": 544 + }, + "apm-source-map-migration-task": { + "p50": 1649, + "p90": 3282, + "p95": 3282, + "p99": 3282 + }, + "actions_telemetry": { + "p50": 19, + "p90": 19, + "p95": 19, + "p99": 19 + }, + "alerting_telemetry": { + "p50": 64, + "p90": 64, + "p95": 64, + "p99": 64 + }, + "endpoint:metadata-check-transforms-task": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "endpoint:user-artifact-packager": { + "p50": 10, + "p90": 13, + "p95": 13, + "p99": 13 + }, + "fleet:bump_agent_policies": { + "p50": 9, + "p90": 9, + "p95": 9, + "p99": 9 + } + }, + "duration_by_persistence": { + "recurring": { + "p50": 9, + "p90": 63.39999999999999, + "p95": 474.99999999999966, + "p99": 544 + }, + "non_recurring": { + "p50": 14, + "p90": 2968.500000000001, + "p95": 3282, + "p99": 3282 + } + }, + "persistence": { + "recurring": 88, + "non_recurring": 12 + }, + "result_frequency_percent_as_number": { + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:check-deleted-files-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-saved-queries": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "task_manager:delete_inactive_background_task_nodes": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerts_invalidate_api_keys": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:unenroll-inactive-agents-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerting_health_check": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Usage-Sender": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:endpoint-diagnostics": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "logs-data-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-lists": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-timelines": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "cases-telemetry-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-packs": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Metrics-Task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:delete-unenrolled-agents-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-configs": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:complete-external-response-actions": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-detection-rules": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-prebuilt-rule-alerts": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:endpoint-meta-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-filterlist-artifact": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-diagnostic-timelines": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-configuration": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:indices-metadata-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Usage-Logger": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "obs-ai-assistant:knowledge-base-migration": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "dashboard_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "session_cleanup": { + "Success": 0, + "RetryScheduled": 100, + "Failed": 0, + "status": "OK" + }, + "ProductDocBase:EnsureUpToDate": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "apm-telemetry-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "ML:saved-objects-sync": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "apm-source-map-migration-task": { + "Success": 50, + "RetryScheduled": 50, + "Failed": 0, + "status": "OK" + }, + "actions_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerting_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:metadata-check-transforms-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:user-artifact-packager": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:bump_agent_policies": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + } + } + } + }, + "status": "OK" + }, + "workload": { + "timestamp": "2025-03-21T21:29:10.367Z", + "value": { + "count": 35, + "cost": 70, + "task_types": { + "Fleet-Metrics-Task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Logger": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Sender": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "ML:saved-objects-sync": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_health_check": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerts_invalidate_api_keys": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "apm-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "cases-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "dashboard_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:complete-external-response-actions": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:metadata-check-transforms-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:user-artifact-packager": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:check-deleted-files-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:delete-unenrolled-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:unenroll-inactive-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "logs-data-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-configs": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-packs": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-saved-queries": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:endpoint-diagnostics": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:endpoint-meta-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:indices-metadata-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-configuration": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-detection-rules": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-diagnostic-timelines": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-filterlist-artifact": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-lists": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-prebuilt-rule-alerts": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-timelines": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "session_cleanup": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:delete_inactive_background_task_nodes": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + } + }, + "non_recurring": 1, + "non_recurring_cost": 2, + "schedule": [ + [ + "1m", + 2 + ], + [ + "60s", + 2 + ], + [ + "5m", + 2 + ], + [ + "10m", + 1 + ], + [ + "15m", + 1 + ], + [ + "45m", + 1 + ], + [ + "1h", + 9 + ], + [ + "3600s", + 1 + ], + [ + "60m", + 1 + ], + [ + "2h", + 1 + ], + [ + "720m", + 2 + ], + [ + "24h", + 7 + ], + [ + "1d", + 3 + ], + [ + "1440m", + 1 + ] + ], + "overdue": 0, + "overdue_cost": 0, + "overdue_non_recurring": 0, + "estimated_schedule_density": [ + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "capacity_requirements": { + "per_minute": 4, + "per_hour": 46, + "per_day": 27 + } + }, + "status": "OK" + }, + "capacity_estimation": { + "status": "OK", + "reason": "Task Manager is healthy, the assumedRequiredThroughputPerMinutePerKibana (148.78541666666666) < capacityPerMinutePerKibana (1200)", + "timestamp": "2025-03-21T21:30:04.780Z", + "value": { + "observed": { + "observed_kibana_instances": 1, + "max_throughput_per_minute_per_kibana": 1200, + "max_throughput_per_minute": 1200, + "minutes_to_drain_overdue": 0, + "avg_recurring_required_throughput_per_minute": 5, + "avg_recurring_required_throughput_per_minute_per_kibana": 5, + "avg_required_throughput_per_minute": 149, + "avg_required_throughput_per_minute_per_kibana": 149 + }, + "proposed": { + "provisioned_kibana": 2, + "min_required_kibana": 1, + "avg_recurring_required_throughput_per_minute_per_kibana": 3, + "avg_required_throughput_per_minute_per_kibana": 75 + } + } + } + } + } diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/bundled_serverless.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/bundled_serverless.yaml new file mode 100644 index 0000000000000..d2edd7bd74032 --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/bundled_serverless.yaml @@ -0,0 +1,364 @@ +openapi: 3.0.3 +info: + title: Task manager health Serverless APIs + description: Kibana APIs for the task manager feature + version: 1.0.0 + license: + name: Elastic License 2.0 + url: https://www.elastic.co/licensing/elastic-license +servers: + - url: / +tags: + - name: task manager + x-displayName: Task manager + externalDocs: + url: https://www.elastic.co/guide/en/kibana/current/task-manager-production-considerations.html + description: Task manager +paths: + /api/task_manager/_health: + get: + summary: Get the task manager health + description: | + Get the health status of the Kibana task manager. + operationId: task-manager-health + tags: + - task manager + responses: + '200': + description: Indicates a successful call + content: + application/json: + schema: + $ref: '#/components/schemas/health_response_serverless' + examples: + taskManagerHealthResponse1: + $ref: '#/components/examples/health_200response_serverless' +components: + schemas: + configuration: + type: object + description: | + This object summarizes the current configuration of Task Manager. This includes dynamic configurations that change over time, such as `poll_interval` and `max_workers`, which can adjust in reaction to changing load on the system. + workload: + type: object + description: | + This object summarizes the work load across the cluster, including the tasks in the system, their types, and current status. + health_response_serverless: + title: Task health response properties + type: object + properties: + id: + type: string + last_update: + type: string + stats: + type: object + properties: + configuration: + $ref: '#/components/schemas/configuration' + workload: + $ref: '#/components/schemas/workload' + status: + type: string + timestamp: + type: string + examples: + health_200response_serverless: + description: A successful response from `GET api/task_manager/_health`. + value: |- + { + "id": "b44483e1-3ba2-4f28-93d0-1d96c69c32c1", + "timestamp": "2025-03-21T21:49:50.409Z", + "status": "OK", + "last_update": "2025-03-21T21:48:53.996Z", + "stats": { + "configuration": { + "timestamp": "2025-03-21T21:47:51.663Z", + "value": { + "request_capacity": 1000, + "monitored_aggregated_stats_refresh_rate": 60000, + "monitored_stats_running_average_window": 50, + "monitored_task_execution_thresholds": { + "custom": {}, + "default": { + "error_threshold": 90, + "warn_threshold": 80 + } + }, + "claim_strategy": "mget", + "poll_interval": 500, + "capacity": { + "config": 10, + "as_workers": 10, + "as_cost": 20 + } + }, + "status": "OK" + }, + "workload": { + "timestamp": "2025-03-21T21:48:53.996Z", + "value": { + "count": 21, + "cost": 42, + "task_types": { + "Fleet-Metrics-Task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Logger": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Sender": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "ML:saved-objects-sync": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions:connector_usage_reporting": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_health_check": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerts_invalidate_api_keys": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "cases-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "dashboard_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:automatic-agent-upgrade-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:check-deleted-files-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:delete-unenrolled-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:sync-integrations-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:unenroll-inactive-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:upgrade-agentless-deployments-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "logs-data-telemetry": { + "count": 1, + "cost": 2, + "status": { + "running": 1 + } + }, + "session_cleanup": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:delete_inactive_background_task_nodes": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + } + }, + "non_recurring": 1, + "non_recurring_cost": 2, + "schedule": [ + [ + "1m", + 2 + ], + [ + "5m", + 2 + ], + [ + "10m", + 1 + ], + [ + "15m", + 1 + ], + [ + "30m", + 1 + ], + [ + "1h", + 5 + ], + [ + "3600s", + 1 + ], + [ + "60m", + 1 + ], + [ + "720m", + 1 + ], + [ + "1d", + 4 + ], + [ + "1440m", + 1 + ] + ], + "overdue": 0, + "overdue_cost": 0, + "overdue_non_recurring": 0, + "estimated_schedule_density": [ + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "capacity_requirements": { + "per_minute": 2, + "per_hour": 43, + "per_day": 7 + } + }, + "status": "OK" + } + } + } diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/examples/health_200response.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/examples/health_200response.yaml new file mode 100644 index 0000000000000..e9d5b05681fea --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/examples/health_200response.yaml @@ -0,0 +1,1224 @@ +# summary: +description: A successful response from `GET api/task_manager/_health`. +value: |- + { + "id": "330bbc6a-56cd-44d5-88e3-e3229f14d619", + "timestamp": "2025-03-21T21:30:04.780Z", + "status": "OK", + "last_update": "2025-03-21T21:30:04.455Z", + "stats": { + "configuration": { + "timestamp": "2025-03-21T21:26:10.002Z", + "value": { + "request_capacity": 1000, + "monitored_aggregated_stats_refresh_rate": 60000, + "monitored_stats_running_average_window": 50, + "monitored_task_execution_thresholds": { + "custom": {}, + "default": { + "error_threshold": 90, + "warn_threshold": 80 + } + }, + "claim_strategy": "mget", + "poll_interval": 500, + "capacity": { + "config": 10, + "as_workers": 10, + "as_cost": 20 + } + }, + "status": "OK" + }, + "runtime": { + "timestamp": "2025-03-21T21:30:04.455Z", + "value": { + "polling": { + "last_successful_poll": "2025-03-21T21:30:04.455Z", + "last_polling_delay": "2025-03-21T21:26:10.001Z", + "claim_duration": { + "p50": 17, + "p90": 22, + "p95": 25, + "p99": 27 + }, + "duration": { + "p50": 19, + "p90": 25.5, + "p95": 28, + "p99": 28 + }, + "claim_conflicts": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "claim_mismatches": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "claim_stale_tasks": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "result_frequency_percent_as_number": { + "Failed": 0, + "NoAvailableWorkers": 0, + "NoTasksClaimed": 100, + "RanOutOfCapacity": 0, + "RunningAtCapacity": 0, + "PoolFilled": 0 + }, + "persistence": { + "recurring": 88, + "non_recurring": 12 + } + }, + "drift": { + "p50": 2089, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "drift_by_type": { + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "p50": 2082, + "p90": 2082, + "p95": 2082, + "p99": 2082 + }, + "fleet:check-deleted-files-task": { + "p50": 2080, + "p90": 2080, + "p95": 2080, + "p99": 2080 + }, + "osquery:telemetry-saved-queries": { + "p50": 2080, + "p90": 2080, + "p95": 2080, + "p99": 2080 + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "p50": 2089, + "p90": 2089, + "p95": 2089, + "p99": 2089 + }, + "task_manager:delete_inactive_background_task_nodes": { + "p50": 336.5, + "p90": 2089, + "p95": 2089, + "p99": 2089 + }, + "alerts_invalidate_api_keys": { + "p50": 2086, + "p90": 2086, + "p95": 2086, + "p99": 2086 + }, + "fleet:unenroll-inactive-agents-task": { + "p50": 2080, + "p90": 2080, + "p95": 2080, + "p99": 2080 + }, + "alerting_health_check": { + "p50": 2086, + "p90": 2086, + "p95": 2086, + "p99": 2086 + }, + "Fleet-Usage-Sender": { + "p50": 2079, + "p90": 2079, + "p95": 2079, + "p99": 2079 + }, + "security:endpoint-diagnostics": { + "p50": 2525, + "p90": 2525, + "p95": 2525, + "p99": 2525 + }, + "logs-data-telemetry": { + "p50": 2525, + "p90": 2525, + "p95": 2525, + "p99": 2525 + }, + "security:telemetry-lists": { + "p50": 2525, + "p90": 2525, + "p95": 2525, + "p99": 2525 + }, + "security:telemetry-timelines": { + "p50": 2526, + "p90": 2526, + "p95": 2526, + "p99": 2526 + }, + "cases-telemetry-task": { + "p50": 2083, + "p90": 2083, + "p95": 2083, + "p99": 2083 + }, + "osquery:telemetry-packs": { + "p50": 2530, + "p90": 2530, + "p95": 2530, + "p99": 2530 + }, + "Fleet-Metrics-Task": { + "p50": 133.5, + "p90": 2530, + "p95": 2530, + "p99": 2530 + }, + "fleet:delete-unenrolled-agents-task": { + "p50": 2530, + "p90": 2530, + "p95": 2530, + "p99": 2530 + }, + "osquery:telemetry-configs": { + "p50": 2529, + "p90": 2529, + "p95": 2529, + "p99": 2529 + }, + "endpoint:complete-external-response-actions": { + "p50": 519, + "p90": 2526, + "p95": 2526, + "p99": 2526 + }, + "security:telemetry-detection-rules": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-prebuilt-rule-alerts": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:endpoint-meta-telemetry": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-filterlist-artifact": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-diagnostic-timelines": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:telemetry-configuration": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "security:indices-metadata-telemetry": { + "p50": 3037, + "p90": 3037, + "p95": 3037, + "p99": 3037 + }, + "Fleet-Usage-Logger": { + "p50": 2190, + "p90": 2190, + "p95": 2190, + "p99": 2190 + }, + "obs-ai-assistant:knowledge-base-migration": { + "p50": 2189, + "p90": 2189, + "p95": 2189, + "p99": 2189 + }, + "dashboard_telemetry": { + "p50": 2452, + "p90": 2452, + "p95": 2452, + "p99": 2452 + }, + "session_cleanup": { + "p50": 2569, + "p90": 2569, + "p95": 2569, + "p99": 2569 + }, + "ProductDocBase:EnsureUpToDate": { + "p50": 2452, + "p90": 2452, + "p95": 2452, + "p99": 2452 + }, + "apm-telemetry-task": { + "p50": 2591, + "p90": 2591, + "p95": 2591, + "p99": 2591 + }, + "ML:saved-objects-sync": { + "p50": 2475, + "p90": 2475, + "p95": 2475, + "p99": 2475 + }, + "apm-source-map-migration-task": { + "p50": 1603.5, + "p90": 2987, + "p95": 2987, + "p99": 2987 + }, + "actions_telemetry": { + "p50": 771, + "p90": 771, + "p95": 771, + "p99": 771 + }, + "alerting_telemetry": { + "p50": 768, + "p90": 768, + "p95": 768, + "p99": 768 + }, + "endpoint:metadata-check-transforms-task": { + "p50": 834, + "p90": 834, + "p95": 834, + "p99": 834 + }, + "endpoint:user-artifact-packager": { + "p50": 529.5, + "p90": 835, + "p95": 835, + "p99": 835 + }, + "fleet:bump_agent_policies": { + "p50": 361, + "p90": 361, + "p95": 361, + "p99": 361 + } + }, + "load": { + "p50": 10, + "p90": 100, + "p95": 100, + "p99": 100 + }, + "execution": { + "duration": { + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "p50": 24, + "p90": 24, + "p95": 24, + "p99": 24 + }, + "fleet:check-deleted-files-task": { + "p50": 24, + "p90": 24, + "p95": 24, + "p99": 24 + }, + "osquery:telemetry-saved-queries": { + "p50": 25, + "p90": 25, + "p95": 25, + "p99": 25 + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "p50": 28, + "p90": 28, + "p95": 28, + "p99": 28 + }, + "task_manager:delete_inactive_background_task_nodes": { + "p50": 7.5, + "p90": 29, + "p95": 29, + "p99": 29 + }, + "alerts_invalidate_api_keys": { + "p50": 34, + "p90": 34, + "p95": 34, + "p99": 34 + }, + "fleet:unenroll-inactive-agents-task": { + "p50": 39, + "p90": 39, + "p95": 39, + "p99": 39 + }, + "alerting_health_check": { + "p50": 42, + "p90": 42, + "p95": 42, + "p99": 42 + }, + "Fleet-Usage-Sender": { + "p50": 78, + "p90": 78, + "p95": 78, + "p99": 78 + }, + "security:endpoint-diagnostics": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "logs-data-telemetry": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-lists": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-timelines": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "cases-telemetry-task": { + "p50": 458, + "p90": 458, + "p95": 458, + "p99": 458 + }, + "osquery:telemetry-packs": { + "p50": 10, + "p90": 10, + "p95": 10, + "p99": 10 + }, + "Fleet-Metrics-Task": { + "p50": 5, + "p90": 10, + "p95": 10, + "p99": 10 + }, + "fleet:delete-unenrolled-agents-task": { + "p50": 11, + "p90": 11, + "p95": 11, + "p99": 11 + }, + "osquery:telemetry-configs": { + "p50": 12, + "p90": 12, + "p95": 12, + "p99": 12 + }, + "endpoint:complete-external-response-actions": { + "p50": 7, + "p90": 11, + "p95": 11, + "p99": 11 + }, + "security:telemetry-detection-rules": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-prebuilt-rule-alerts": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:endpoint-meta-telemetry": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-filterlist-artifact": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:telemetry-diagnostic-timelines": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:telemetry-configuration": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:indices-metadata-telemetry": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "Fleet-Usage-Logger": { + "p50": 18, + "p90": 18, + "p95": 18, + "p99": 18 + }, + "obs-ai-assistant:knowledge-base-migration": { + "p50": 8, + "p90": 8, + "p95": 8, + "p99": 8 + }, + "dashboard_telemetry": { + "p50": 12, + "p90": 12, + "p95": 12, + "p99": 12 + }, + "session_cleanup": { + "p50": 58, + "p90": 58, + "p95": 58, + "p99": 58 + }, + "ProductDocBase:EnsureUpToDate": { + "p50": 147, + "p90": 147, + "p95": 147, + "p99": 147 + }, + "apm-telemetry-task": { + "p50": 543, + "p90": 543, + "p95": 543, + "p99": 543 + }, + "ML:saved-objects-sync": { + "p50": 544, + "p90": 544, + "p95": 544, + "p99": 544 + }, + "apm-source-map-migration-task": { + "p50": 1649, + "p90": 3282, + "p95": 3282, + "p99": 3282 + }, + "actions_telemetry": { + "p50": 19, + "p90": 19, + "p95": 19, + "p99": 19 + }, + "alerting_telemetry": { + "p50": 64, + "p90": 64, + "p95": 64, + "p99": 64 + }, + "endpoint:metadata-check-transforms-task": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "endpoint:user-artifact-packager": { + "p50": 10, + "p90": 13, + "p95": 13, + "p99": 13 + }, + "fleet:bump_agent_policies": { + "p50": 9, + "p90": 9, + "p95": 9, + "p99": 9 + } + }, + "duration_by_persistence": { + "recurring": { + "p50": 9, + "p90": 63.39999999999999, + "p95": 474.99999999999966, + "p99": 544 + }, + "non_recurring": { + "p50": 14, + "p90": 2968.500000000001, + "p95": 3282, + "p99": 3282 + } + }, + "persistence": { + "recurring": 88, + "non_recurring": 12 + }, + "result_frequency_percent_as_number": { + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:check-deleted-files-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-saved-queries": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "task_manager:delete_inactive_background_task_nodes": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerts_invalidate_api_keys": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:unenroll-inactive-agents-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerting_health_check": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Usage-Sender": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:endpoint-diagnostics": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "logs-data-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-lists": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-timelines": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "cases-telemetry-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-packs": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Metrics-Task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:delete-unenrolled-agents-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-configs": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:complete-external-response-actions": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-detection-rules": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-prebuilt-rule-alerts": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:endpoint-meta-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-filterlist-artifact": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-diagnostic-timelines": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-configuration": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:indices-metadata-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Usage-Logger": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "obs-ai-assistant:knowledge-base-migration": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "dashboard_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "session_cleanup": { + "Success": 0, + "RetryScheduled": 100, + "Failed": 0, + "status": "OK" + }, + "ProductDocBase:EnsureUpToDate": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "apm-telemetry-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "ML:saved-objects-sync": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "apm-source-map-migration-task": { + "Success": 50, + "RetryScheduled": 50, + "Failed": 0, + "status": "OK" + }, + "actions_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerting_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:metadata-check-transforms-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:user-artifact-packager": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:bump_agent_policies": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + } + } + } + }, + "status": "OK" + }, + "workload": { + "timestamp": "2025-03-21T21:29:10.367Z", + "value": { + "count": 35, + "cost": 70, + "task_types": { + "Fleet-Metrics-Task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Logger": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Sender": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "ML:saved-objects-sync": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_health_check": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerts_invalidate_api_keys": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "apm-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "cases-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "dashboard_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:complete-external-response-actions": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:metadata-check-transforms-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:user-artifact-packager": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:check-deleted-files-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:delete-unenrolled-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:unenroll-inactive-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "logs-data-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-configs": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-packs": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-saved-queries": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:endpoint-diagnostics": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:endpoint-meta-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:indices-metadata-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-configuration": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-detection-rules": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-diagnostic-timelines": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-filterlist-artifact": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-lists": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-prebuilt-rule-alerts": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-timelines": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "session_cleanup": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:delete_inactive_background_task_nodes": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + } + }, + "non_recurring": 1, + "non_recurring_cost": 2, + "schedule": [ + [ + "1m", + 2 + ], + [ + "60s", + 2 + ], + [ + "5m", + 2 + ], + [ + "10m", + 1 + ], + [ + "15m", + 1 + ], + [ + "45m", + 1 + ], + [ + "1h", + 9 + ], + [ + "3600s", + 1 + ], + [ + "60m", + 1 + ], + [ + "2h", + 1 + ], + [ + "720m", + 2 + ], + [ + "24h", + 7 + ], + [ + "1d", + 3 + ], + [ + "1440m", + 1 + ] + ], + "overdue": 0, + "overdue_cost": 0, + "overdue_non_recurring": 0, + "estimated_schedule_density": [ + 0, + 0, + 0, + 1, + 1, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "capacity_requirements": { + "per_minute": 4, + "per_hour": 46, + "per_day": 27 + } + }, + "status": "OK" + }, + "capacity_estimation": { + "status": "OK", + "reason": "Task Manager is healthy, the assumedRequiredThroughputPerMinutePerKibana (148.78541666666666) < capacityPerMinutePerKibana (1200)", + "timestamp": "2025-03-21T21:30:04.780Z", + "value": { + "observed": { + "observed_kibana_instances": 1, + "max_throughput_per_minute_per_kibana": 1200, + "max_throughput_per_minute": 1200, + "minutes_to_drain_overdue": 0, + "avg_recurring_required_throughput_per_minute": 5, + "avg_recurring_required_throughput_per_minute_per_kibana": 5, + "avg_required_throughput_per_minute": 149, + "avg_required_throughput_per_minute_per_kibana": 149 + }, + "proposed": { + "provisioned_kibana": 2, + "min_required_kibana": 1, + "avg_recurring_required_throughput_per_minute_per_kibana": 3, + "avg_required_throughput_per_minute_per_kibana": 75 + } + } + } + } + } diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/examples/health_200response_serverless.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/examples/health_200response_serverless.yaml new file mode 100644 index 0000000000000..4b6040193f3a1 --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/examples/health_200response_serverless.yaml @@ -0,0 +1,299 @@ +# summary: +description: A successful response from `GET api/task_manager/_health`. +value: |- + { + "id": "b44483e1-3ba2-4f28-93d0-1d96c69c32c1", + "timestamp": "2025-03-21T21:49:50.409Z", + "status": "OK", + "last_update": "2025-03-21T21:48:53.996Z", + "stats": { + "configuration": { + "timestamp": "2025-03-21T21:47:51.663Z", + "value": { + "request_capacity": 1000, + "monitored_aggregated_stats_refresh_rate": 60000, + "monitored_stats_running_average_window": 50, + "monitored_task_execution_thresholds": { + "custom": {}, + "default": { + "error_threshold": 90, + "warn_threshold": 80 + } + }, + "claim_strategy": "mget", + "poll_interval": 500, + "capacity": { + "config": 10, + "as_workers": 10, + "as_cost": 20 + } + }, + "status": "OK" + }, + "workload": { + "timestamp": "2025-03-21T21:48:53.996Z", + "value": { + "count": 21, + "cost": 42, + "task_types": { + "Fleet-Metrics-Task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Logger": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Sender": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "ML:saved-objects-sync": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions:connector_usage_reporting": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_health_check": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerts_invalidate_api_keys": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "cases-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "dashboard_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:automatic-agent-upgrade-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:check-deleted-files-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:delete-unenrolled-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:sync-integrations-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:unenroll-inactive-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:upgrade-agentless-deployments-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "logs-data-telemetry": { + "count": 1, + "cost": 2, + "status": { + "running": 1 + } + }, + "session_cleanup": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:delete_inactive_background_task_nodes": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + } + }, + "non_recurring": 1, + "non_recurring_cost": 2, + "schedule": [ + [ + "1m", + 2 + ], + [ + "5m", + 2 + ], + [ + "10m", + 1 + ], + [ + "15m", + 1 + ], + [ + "30m", + 1 + ], + [ + "1h", + 5 + ], + [ + "3600s", + 1 + ], + [ + "60m", + 1 + ], + [ + "720m", + 1 + ], + [ + "1d", + 4 + ], + [ + "1440m", + 1 + ] + ], + "overdue": 0, + "overdue_cost": 0, + "overdue_non_recurring": 0, + "estimated_schedule_density": [ + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "capacity_requirements": { + "per_minute": 2, + "per_hour": 43, + "per_day": 7 + } + }, + "status": "OK" + } + } + } diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/configuration.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/configuration.yaml new file mode 100644 index 0000000000000..7117ebc6c31b1 --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/configuration.yaml @@ -0,0 +1,4 @@ +type: object +description: > + This object summarizes the current configuration of Task Manager. + This includes dynamic configurations that change over time, such as `poll_interval` and `max_workers`, which can adjust in reaction to changing load on the system. \ No newline at end of file diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/health_response.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/health_response.yaml new file mode 100644 index 0000000000000..a3cf366e126e3 --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/health_response.yaml @@ -0,0 +1,27 @@ +title: Task health response properties +type: object +properties: + id: + type: string + last_update: + type: string + stats: + type: object + properties: + capacity_estimation: + type: object + description: > + This object provides a rough estimate about the sufficiency of its capacity. + These are estimates based on historical data and should not be used as predictions. + configuration: + $ref: 'configuration.yaml' + runtime: + type: object + description: > + This object tracks runtime performance of Task Manager, tracking task drift, worker load, and stats broken down by type, including duration and run results. + workload: + $ref: 'workload.yaml' + status: + type: string + timestamp: + type: string diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/health_response_serverless.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/health_response_serverless.yaml new file mode 100644 index 0000000000000..f8712ff24a31b --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/health_response_serverless.yaml @@ -0,0 +1,18 @@ +title: Task health response properties +type: object +properties: + id: + type: string + last_update: + type: string + stats: + type: object + properties: + configuration: + $ref: 'configuration.yaml' + workload: + $ref: 'workload.yaml' + status: + type: string + timestamp: + type: string diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/workload.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/workload.yaml new file mode 100644 index 0000000000000..dcca9fa6e269e --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/components/schemas/workload.yaml @@ -0,0 +1,3 @@ +type: object +description: > + This object summarizes the work load across the cluster, including the tasks in the system, their types, and current status. \ No newline at end of file diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/entrypoint.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/entrypoint.yaml new file mode 100644 index 0000000000000..9ec04961b35be --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/entrypoint.yaml @@ -0,0 +1,36 @@ +openapi: 3.0.3 +info: + title: Task manager health APIs + description: Kibana APIs for the task manager feature + version: 1.0.0 + license: + name: Elastic License 2.0 + url: https://www.elastic.co/licensing/elastic-license +tags: + - name: task manager + x-displayName: Task manager + externalDocs: + url: >- + https://www.elastic.co/guide/en/kibana/current/task-manager-production-considerations.html + description: Task manager +servers: + - url: / +paths: + /api/task_manager/_health: + get: + summary: Get the task manager health + description: | + Get the health status of the Kibana task manager. + operationId: task-manager-health + tags: + - task manager + responses: + '200': + description: Indicates a successful call + content: + application/json: + schema: + $ref: 'components/schemas/health_response.yaml' + examples: + taskManagerHealthResponse1: + $ref: 'components/examples/health_200response.yaml' diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/entrypoint_serverless.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/entrypoint_serverless.yaml new file mode 100644 index 0000000000000..d8a42dc6ca08a --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/entrypoint_serverless.yaml @@ -0,0 +1,36 @@ +openapi: 3.0.3 +info: + title: Task manager health Serverless APIs + description: Kibana APIs for the task manager feature + version: 1.0.0 + license: + name: Elastic License 2.0 + url: https://www.elastic.co/licensing/elastic-license +tags: + - name: task manager + x-displayName: Task manager + externalDocs: + url: >- + https://www.elastic.co/guide/en/kibana/current/task-manager-production-considerations.html + description: Task manager +servers: + - url: / +paths: + /api/task_manager/_health: + get: + summary: Get the task manager health + description: | + Get the health status of the Kibana task manager. + operationId: task-manager-health + tags: + - task manager + responses: + '200': + description: Indicates a successful call + content: + application/json: + schema: + $ref: 'components/schemas/health_response_serverless.yaml' + examples: + taskManagerHealthResponse1: + $ref: 'components/examples/health_200response_serverless.yaml' diff --git a/x-pack/platform/plugins/shared/task_manager/docs/openapi/health_apis.yaml b/x-pack/platform/plugins/shared/task_manager/docs/openapi/health_apis.yaml new file mode 100644 index 0000000000000..e0da9f2b6db6c --- /dev/null +++ b/x-pack/platform/plugins/shared/task_manager/docs/openapi/health_apis.yaml @@ -0,0 +1,1292 @@ +openapi: 3.0.3 +info: + title: Task manager health APIs + description: Kibana APIs for the task manager feature + version: "1.0.0" + license: + name: Elastic License 2.0 + url: https://www.elastic.co/licensing/elastic-license +tags: + - name: task manager + # description: + x-displayName: Task manager + externalDocs: + url: https://www.elastic.co/guide/en/kibana/current/task-manager-production-considerations.html + description: Task manager +servers: + - url: / +paths: + /api/task_manager/_health: + get: + summary: Get the task manager health + description: > + Get the health status of the Kibana task manager. + operationId: task-manager-health + tags: + - task manager + responses: + '200': + description: Indicates a successful call + content: + application/json: + schema: + type: object + properties: + id: + type: string + # description: + last_update: + type: string + # description: + stats: + type: object + properties: + capacity_estimation: + type: object + description: > + This object provides a rough estimate about the sufficiency of its capacity. + These are estimates based on historical data and should not be used as predictions. + configuration: + type: object + description: > + This object summarizes the current configuration of Task Manager. + This includes dynamic configurations that change over time, such as `poll_interval` and `max_workers`, which can adjust in reaction to changing load on the system. + runtime: + type: object + description: > + This object tracks runtime performance of Task Manager, tracking task drift, worker load, and stats broken down by type, including duration and run results. + workload: + type: object + description: > + This object summarizes the work load across the cluster, including the tasks in the system, their types, and current status. + status: + type: string + # description: + timestamp: + type: string + # description: + examples: + taskManagerHealthResponse1: + # summary: + value: |- + { + "id": "fbed0dcc-3014-4b06-a2f4-1944b7b6df00", + "timestamp": "2025-03-21T21:14:50.535Z", + "status": "OK", + "last_update": "2025-03-21T21:14:50.240Z", + "stats": { + "configuration": { + "timestamp": "2025-03-21T21:11:01.073Z", + "value": { + "request_capacity": 1000, + "monitored_aggregated_stats_refresh_rate": 60000, + "monitored_stats_running_average_window": 50, + "monitored_task_execution_thresholds": { + "custom": {}, + "default": { + "error_threshold": 90, + "warn_threshold": 80 + } + }, + "claim_strategy": "mget", + "poll_interval": 500, + "capacity": { + "config": 10, + "as_workers": 10, + "as_cost": 20 + } + }, + "status": "OK" + }, + "runtime": { + "timestamp": "2025-03-21T21:14:50.240Z", + "value": { + "polling": { + "last_successful_poll": "2025-03-21T21:14:50.240Z", + "last_polling_delay": "2025-03-21T21:11:01.072Z", + "claim_duration": { + "p50": 4, + "p90": 4, + "p95": 5, + "p99": 8 + }, + "duration": { + "p50": 4, + "p90": 5, + "p95": 7, + "p99": 8 + }, + "claim_conflicts": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "claim_mismatches": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "claim_stale_tasks": { + "p50": 0, + "p90": 0, + "p95": 0, + "p99": 0 + }, + "result_frequency_percent_as_number": { + "Failed": 0, + "NoAvailableWorkers": 0, + "NoTasksClaimed": 100, + "RanOutOfCapacity": 0, + "RunningAtCapacity": 0, + "PoolFilled": 0 + }, + "persistence": { + "recurring": 90, + "non_recurring": 10 + } + }, + "drift": { + "p50": 846187459, + "p90": 910992736, + "p95": 911234119, + "p99": 911237991 + }, + "drift_by_type": { + "endpoint:user-artifact-packager": { + "p50": 518.5, + "p90": 911234116, + "p95": 911234116, + "p99": 911234116 + }, + "security:endpoint-diagnostics": { + "p50": 910998502, + "p90": 910998502, + "p95": 910998502, + "p99": 910998502 + }, + "alerts_invalidate_api_keys": { + "p50": 910998502, + "p90": 910998502, + "p95": 910998502, + "p99": 910998502 + }, + "fleet:delete-unenrolled-agents-task": { + "p50": 910986835, + "p90": 910986835, + "p95": 910986835, + "p99": 910986835 + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "p50": 910986835, + "p90": 910986835, + "p95": 910986835, + "p99": 910986835 + }, + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "p50": 910986836, + "p90": 910986836, + "p95": 910986836, + "p99": 910986836 + }, + "Fleet-Metrics-Task": { + "p50": 324.5, + "p90": 911237991, + "p95": 911237991, + "p99": 911237991 + }, + "endpoint:complete-external-response-actions": { + "p50": 522, + "p90": 911234119, + "p95": 911234119, + "p99": 911234119 + }, + "alerting_health_check": { + "p50": 910986836, + "p90": 910986836, + "p95": 910986836, + "p99": 910986836 + }, + "task_manager:delete_inactive_background_task_nodes": { + "p50": 324.5, + "p90": 911237991, + "p95": 911237991, + "p99": 911237991 + }, + "endpoint:metadata-check-transforms-task": { + "p50": 910967470, + "p90": 910967470, + "p95": 910967470, + "p99": 910967470 + }, + "security:telemetry-timelines": { + "p50": 910986969, + "p90": 910986969, + "p95": 910986969, + "p99": 910986969 + }, + "security:telemetry-diagnostic-timelines": { + "p50": 910986415, + "p90": 910986415, + "p95": 910986415, + "p99": 910986415 + }, + "security:telemetry-prebuilt-rule-alerts": { + "p50": 910986415, + "p90": 910986415, + "p95": 910986415, + "p99": 910986415 + }, + "security:telemetry-configuration": { + "p50": 910986415, + "p90": 910986415, + "p95": 910986415, + "p99": 910986415 + }, + "security:telemetry-filterlist-artifact": { + "p50": 910986415, + "p90": 910986415, + "p95": 910986415, + "p99": 910986415 + }, + "session_cleanup": { + "p50": 910985983, + "p90": 910985983, + "p95": 910985983, + "p99": 910985983 + }, + "fleet:unenroll-inactive-agents-task": { + "p50": 910699084, + "p90": 910699084, + "p95": 910699084, + "p99": 910699084 + }, + "Fleet-Usage-Logger": { + "p50": 910986416, + "p90": 910986416, + "p95": 910986416, + "p99": 910986416 + }, + "Fleet-Usage-Sender": { + "p50": 910986970, + "p90": 910986970, + "p95": 910986970, + "p99": 910986970 + }, + "logs-data-telemetry": { + "p50": 846187459, + "p90": 846187459, + "p95": 846187459, + "p99": 846187459 + }, + "security:telemetry-lists": { + "p50": 846187459, + "p90": 846187459, + "p95": 846187459, + "p99": 846187459 + }, + "security:telemetry-detection-rules": { + "p50": 846187459, + "p90": 846187459, + "p95": 846187459, + "p99": 846187459 + }, + "security:endpoint-meta-telemetry": { + "p50": 846186905, + "p90": 846186905, + "p95": 846186905, + "p99": 846186905 + }, + "fleet:check-deleted-files-task": { + "p50": 846187905, + "p90": 846187905, + "p95": 846187905, + "p99": 846187905 + }, + "osquery:telemetry-configs": { + "p50": 846187460, + "p90": 846187460, + "p95": 846187460, + "p99": 846187460 + }, + "osquery:telemetry-saved-queries": { + "p50": 846187459, + "p90": 846187459, + "p95": 846187459, + "p99": 846187459 + }, + "osquery:telemetry-packs": { + "p50": 846187905, + "p90": 846187905, + "p95": 846187905, + "p99": 846187905 + }, + "apm-telemetry-task": { + "p50": 889386904, + "p90": 889386904, + "p95": 889386904, + "p99": 889386904 + }, + "obs-ai-assistant:knowledge-base-migration": { + "p50": 1733, + "p90": 1733, + "p95": 1733, + "p99": 1733 + }, + "apm-source-map-migration-task": { + "p50": 2650, + "p90": 2650, + "p95": 2650, + "p99": 2650 + }, + "security:indices-metadata-telemetry": { + "p50": 846187402, + "p90": 846187402, + "p95": 846187402, + "p99": 846187402 + }, + "dashboard_telemetry": { + "p50": 1741, + "p90": 1741, + "p95": 1741, + "p99": 1741 + }, + "ML:saved-objects-sync": { + "p50": 1745, + "p90": 1745, + "p95": 1745, + "p99": 1745 + }, + "actions_telemetry": { + "p50": 846169458, + "p90": 846169458, + "p95": 846169458, + "p99": 846169458 + }, + "alerting_telemetry": { + "p50": 846169459, + "p90": 846169459, + "p95": 846169459, + "p99": 846169459 + }, + "ProductDocBase:EnsureUpToDate": { + "p50": 1728, + "p90": 1728, + "p95": 1728, + "p99": 1728 + }, + "cases-telemetry-task": { + "p50": 889387905, + "p90": 889387905, + "p95": 889387905, + "p99": 889387905 + }, + "fleet:bump_agent_policies": { + "p50": 421, + "p90": 421, + "p95": 421, + "p99": 421 + } + }, + "load": { + "p50": 40, + "p90": 100, + "p95": 100, + "p99": 100 + }, + "execution": { + "duration": { + "endpoint:user-artifact-packager": { + "p50": 11.5, + "p90": 13, + "p95": 13, + "p99": 13 + }, + "security:endpoint-diagnostics": { + "p50": 9, + "p90": 9, + "p95": 9, + "p99": 9 + }, + "alerts_invalidate_api_keys": { + "p50": 34, + "p90": 34, + "p95": 34, + "p99": 34 + }, + "fleet:delete-unenrolled-agents-task": { + "p50": 35, + "p90": 35, + "p95": 35, + "p99": 35 + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "p50": 35, + "p90": 35, + "p95": 35, + "p99": 35 + }, + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "p50": 36, + "p90": 36, + "p95": 36, + "p99": 36 + }, + "Fleet-Metrics-Task": { + "p50": 5.5, + "p90": 40, + "p95": 40, + "p99": 40 + }, + "endpoint:complete-external-response-actions": { + "p50": 9, + "p90": 52, + "p95": 52, + "p99": 52 + }, + "alerting_health_check": { + "p50": 78, + "p90": 78, + "p95": 78, + "p99": 78 + }, + "task_manager:delete_inactive_background_task_nodes": { + "p50": 6, + "p90": 84, + "p95": 84, + "p99": 84 + }, + "endpoint:metadata-check-transforms-task": { + "p50": 4, + "p90": 4, + "p95": 4, + "p99": 4 + }, + "security:telemetry-timelines": { + "p50": 6, + "p90": 6, + "p95": 6, + "p99": 6 + }, + "security:telemetry-diagnostic-timelines": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:telemetry-prebuilt-rule-alerts": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:telemetry-configuration": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "security:telemetry-filterlist-artifact": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + }, + "session_cleanup": { + "p50": 17, + "p90": 17, + "p95": 17, + "p99": 17 + }, + "fleet:unenroll-inactive-agents-task": { + "p50": 18, + "p90": 18, + "p95": 18, + "p99": 18 + }, + "Fleet-Usage-Logger": { + "p50": 22, + "p90": 22, + "p95": 22, + "p99": 22 + }, + "Fleet-Usage-Sender": { + "p50": 56, + "p90": 56, + "p95": 56, + "p99": 56 + }, + "logs-data-telemetry": { + "p50": 14, + "p90": 14, + "p95": 14, + "p99": 14 + }, + "security:telemetry-lists": { + "p50": 14, + "p90": 14, + "p95": 14, + "p99": 14 + }, + "security:telemetry-detection-rules": { + "p50": 14, + "p90": 14, + "p95": 14, + "p99": 14 + }, + "security:endpoint-meta-telemetry": { + "p50": 13, + "p90": 13, + "p95": 13, + "p99": 13 + }, + "fleet:check-deleted-files-task": { + "p50": 21, + "p90": 21, + "p95": 21, + "p99": 21 + }, + "osquery:telemetry-configs": { + "p50": 20, + "p90": 20, + "p95": 20, + "p99": 20 + }, + "osquery:telemetry-saved-queries": { + "p50": 24, + "p90": 24, + "p95": 24, + "p99": 24 + }, + "osquery:telemetry-packs": { + "p50": 24, + "p90": 24, + "p95": 24, + "p99": 24 + }, + "apm-telemetry-task": { + "p50": 361, + "p90": 361, + "p95": 361, + "p99": 361 + }, + "obs-ai-assistant:knowledge-base-migration": { + "p50": 9, + "p90": 9, + "p95": 9, + "p99": 9 + }, + "apm-source-map-migration-task": { + "p50": 23, + "p90": 23, + "p95": 23, + "p99": 23 + }, + "security:indices-metadata-telemetry": { + "p50": 11, + "p90": 11, + "p95": 11, + "p99": 11 + }, + "dashboard_telemetry": { + "p50": 15, + "p90": 15, + "p95": 15, + "p99": 15 + }, + "ML:saved-objects-sync": { + "p50": 23, + "p90": 23, + "p95": 23, + "p99": 23 + }, + "actions_telemetry": { + "p50": 31, + "p90": 31, + "p95": 31, + "p99": 31 + }, + "alerting_telemetry": { + "p50": 39, + "p90": 39, + "p95": 39, + "p99": 39 + }, + "ProductDocBase:EnsureUpToDate": { + "p50": 139, + "p90": 139, + "p95": 139, + "p99": 139 + }, + "cases-telemetry-task": { + "p50": 1005, + "p90": 1005, + "p95": 1005, + "p99": 1005 + }, + "fleet:bump_agent_policies": { + "p50": 5, + "p90": 5, + "p95": 5, + "p99": 5 + } + }, + "duration_by_persistence": { + "recurring": { + "p50": 14, + "p90": 55.599999999999994, + "p95": 139.3999999999988, + "p99": 1005 + }, + "non_recurring": { + "p50": 15, + "p90": 139, + "p95": 139, + "p99": 139 + } + }, + "persistence": { + "recurring": 90, + "non_recurring": 10 + }, + "result_frequency_percent_as_number": { + "endpoint:user-artifact-packager": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:endpoint-diagnostics": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerts_invalidate_api_keys": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:delete-unenrolled-agents-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Metrics-Task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:complete-external-response-actions": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerting_health_check": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "task_manager:delete_inactive_background_task_nodes": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "endpoint:metadata-check-transforms-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-timelines": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-diagnostic-timelines": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-prebuilt-rule-alerts": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-configuration": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-filterlist-artifact": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "session_cleanup": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:unenroll-inactive-agents-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Usage-Logger": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "Fleet-Usage-Sender": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "logs-data-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-lists": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:telemetry-detection-rules": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:endpoint-meta-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:check-deleted-files-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-configs": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-saved-queries": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "osquery:telemetry-packs": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "apm-telemetry-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "obs-ai-assistant:knowledge-base-migration": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "apm-source-map-migration-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "security:indices-metadata-telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "dashboard_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "ML:saved-objects-sync": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "actions_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "alerting_telemetry": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "ProductDocBase:EnsureUpToDate": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "cases-telemetry-task": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + }, + "fleet:bump_agent_policies": { + "Success": 100, + "RetryScheduled": 0, + "Failed": 0, + "status": "OK" + } + } + } + }, + "status": "OK" + }, + "workload": { + "timestamp": "2025-03-21T21:14:01.489Z", + "value": { + "count": 35, + "cost": 70, + "task_types": { + "Fleet-Metrics-Task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Logger": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "Fleet-Usage-Sender": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "ML:saved-objects-sync": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "SLO:ORPHAN_SUMMARIES-CLEANUP-TASK": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "actions_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_health_check": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerting_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "alerts_invalidate_api_keys": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "apm-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "cases-telemetry-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "dashboard_telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:complete-external-response-actions": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:metadata-check-transforms-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "endpoint:user-artifact-packager": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:check-deleted-files-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:delete-unenrolled-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "fleet:unenroll-inactive-agents-task": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "logs-data-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-configs": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-packs": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "osquery:telemetry-saved-queries": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:endpoint-diagnostics": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:endpoint-meta-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:indices-metadata-telemetry": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-configuration": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-detection-rules": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-diagnostic-timelines": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-filterlist-artifact": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-lists": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-prebuilt-rule-alerts": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "security:telemetry-timelines": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "session_cleanup": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:delete_inactive_background_task_nodes": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + }, + "task_manager:mark_removed_tasks_as_unrecognized": { + "count": 1, + "cost": 2, + "status": { + "idle": 1 + } + } + }, + "non_recurring": 1, + "non_recurring_cost": 2, + "schedule": [ + [ + "1m", + 2 + ], + [ + "60s", + 2 + ], + [ + "5m", + 2 + ], + [ + "10m", + 1 + ], + [ + "15m", + 1 + ], + [ + "45m", + 1 + ], + [ + "1h", + 9 + ], + [ + "3600s", + 1 + ], + [ + "60m", + 1 + ], + [ + "2h", + 1 + ], + [ + "720m", + 2 + ], + [ + "24h", + 7 + ], + [ + "1d", + 3 + ], + [ + "1440m", + 1 + ] + ], + "overdue": 0, + "overdue_cost": 0, + "overdue_non_recurring": 0, + "estimated_schedule_density": [ + 0, + 2, + 0, + 2, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "capacity_requirements": { + "per_minute": 4, + "per_hour": 46, + "per_day": 27 + } + }, + "status": "OK" + }, + "capacity_estimation": { + "status": "OK", + "reason": "Task Manager is healthy, the assumedRequiredThroughputPerMinutePerKibana (124.78541666666666) < capacityPerMinutePerKibana (1200)", + "timestamp": "2025-03-21T21:14:50.535Z", + "value": { + "observed": { + "observed_kibana_instances": 1, + "max_throughput_per_minute_per_kibana": 1200, + "max_throughput_per_minute": 1200, + "minutes_to_drain_overdue": 0, + "avg_recurring_required_throughput_per_minute": 5, + "avg_recurring_required_throughput_per_minute_per_kibana": 5, + "avg_required_throughput_per_minute": 125, + "avg_required_throughput_per_minute_per_kibana": 125 + }, + "proposed": { + "provisioned_kibana": 2, + "min_required_kibana": 1, + "avg_recurring_required_throughput_per_minute_per_kibana": 3, + "avg_required_throughput_per_minute_per_kibana": 63 + } + } + } + } + }