published on Thursday, May 14, 2026 by elastic
published on Thursday, May 14, 2026 by elastic
Creates or updates a Kibana SLO.
See the Kibana SLO docs.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as elasticstack from "@pulumi/elasticstack";
const authServerLatency = new elasticstack.KibanaSlo("auth_server_latency", {
name: "Auth server latency",
description: "Ensures auth server is responding in time",
apmLatencyIndicators: [{
environment: "production",
service: "auth",
transactionType: "request",
transactionName: "GET /auth",
index: "metrics-apm*",
threshold: 500,
}],
timeWindows: [{
duration: "7d",
type: "rolling",
}],
budgetingMethod: "timeslices",
objectives: [{
target: 0.95,
timesliceTarget: 0.95,
timesliceWindow: "5m",
}],
settings: {
syncDelay: "5m",
frequency: "5m",
},
});
const authServerAvailability = new elasticstack.KibanaSlo("auth_server_availability", {
name: "Auth server latency",
description: "Ensures auth server is responding in time",
apmAvailabilityIndicators: [{
environment: "production",
service: "my-service",
transactionType: "request",
transactionName: "GET /sup/dawg",
index: "metrics-apm*",
}],
timeWindows: [{
duration: "7d",
type: "rolling",
}],
budgetingMethod: "timeslices",
objectives: [{
target: 0.95,
timesliceTarget: 0.95,
timesliceWindow: "5m",
}],
settings: {
syncDelay: "5m",
frequency: "5m",
},
});
const customKql = new elasticstack.KibanaSlo("custom_kql", {
name: "custom kql",
description: "custom kql",
kqlCustomIndicators: [{
index: "my-index",
good: "latency < 300",
total: "*",
filter: "labels.groupId: group-0",
timestampField: "custom_timestamp",
}],
timeWindows: [{
duration: "7d",
type: "rolling",
}],
budgetingMethod: "timeslices",
objectives: [{
target: 0.95,
timesliceTarget: 0.95,
timesliceWindow: "5m",
}],
settings: {
syncDelay: "5m",
frequency: "5m",
},
});
// Object-form KQL (filter_kql, good_kql, total_kql) and optional settings.sync_field / enabled
// (see resource schema). Use the attribute form `filter_kql = { kql_query = "..." }` inside
// `kql_custom_indicator`, not a nested `filter_kql { }` block.
const kqlObjectForm = new elasticstack.KibanaSlo("kql_object_form", {
name: "kql object form example",
description: "KQL with object-form union and managed enabled state",
enabled: true,
kqlCustomIndicators: [{
index: "my-index",
filterKql: {
kqlQuery: "service.name: checkout",
},
goodKql: {
kqlQuery: "http.response.status_code: 200",
},
totalKql: {
kqlQuery: "*",
},
}],
timeWindows: [{
duration: "7d",
type: "rolling",
}],
budgetingMethod: "timeslices",
objectives: [{
target: 0.95,
timesliceTarget: 0.95,
timesliceWindow: "5m",
}],
settings: {
syncDelay: "5m",
frequency: "5m",
syncField: "@timestamp",
},
});
//Available from 8.10.0
const customHistogram = new elasticstack.KibanaSlo("custom_histogram", {
name: "custom histogram",
description: "custom histogram",
histogramCustomIndicators: [{
index: "my-index",
goods: [{
field: "test",
aggregation: "value_count",
filter: "latency < 300",
}],
totals: [{
field: "test",
aggregation: "value_count",
}],
filter: "labels.groupId: group-0",
timestampField: "custom_timestamp",
}],
timeWindows: [{
duration: "7d",
type: "rolling",
}],
budgetingMethod: "timeslices",
objectives: [{
target: 0.95,
timesliceTarget: 0.95,
timesliceWindow: "5m",
}],
tags: [
"tag-1",
"another_tag",
],
});
//Available from 8.10.0
const customMetric = new elasticstack.KibanaSlo("custom_metric", {
name: "custom kql",
description: "custom kql",
metricCustomIndicators: [{
index: "my-index",
goods: [{
metrics: [{
name: "A",
aggregation: "sum",
field: "processor.processed",
}],
equation: "A",
}],
totals: [{
metrics: [{
name: "A",
aggregation: "sum",
field: "processor.accepted",
}],
equation: "A",
}],
}],
timeWindows: [{
duration: "7d",
type: "rolling",
}],
budgetingMethod: "timeslices",
objectives: [{
target: 0.95,
timesliceTarget: 0.95,
timesliceWindow: "5m",
}],
});
//Available from 8.12.0
const timesliceMetric = new elasticstack.KibanaSlo("timeslice_metric", {
name: "timeslice metric",
description: "timeslice metric",
timesliceMetricIndicators: [{
index: "my-index",
timestampField: "@timestamp",
metrics: [{
metrics: [{
name: "A",
aggregation: "sum",
field: "latency",
}],
equation: "A",
comparator: "GT",
threshold: 100,
}],
}],
timeWindows: [{
duration: "7d",
type: "rolling",
}],
budgetingMethod: "timeslices",
objectives: [{
target: 0.95,
timesliceTarget: 0.95,
timesliceWindow: "5m",
}],
});
import pulumi
import pulumi_elasticstack as elasticstack
auth_server_latency = elasticstack.KibanaSlo("auth_server_latency",
name="Auth server latency",
description="Ensures auth server is responding in time",
apm_latency_indicators=[{
"environment": "production",
"service": "auth",
"transaction_type": "request",
"transaction_name": "GET /auth",
"index": "metrics-apm*",
"threshold": 500,
}],
time_windows=[{
"duration": "7d",
"type": "rolling",
}],
budgeting_method="timeslices",
objectives=[{
"target": 0.95,
"timeslice_target": 0.95,
"timeslice_window": "5m",
}],
settings={
"sync_delay": "5m",
"frequency": "5m",
})
auth_server_availability = elasticstack.KibanaSlo("auth_server_availability",
name="Auth server latency",
description="Ensures auth server is responding in time",
apm_availability_indicators=[{
"environment": "production",
"service": "my-service",
"transaction_type": "request",
"transaction_name": "GET /sup/dawg",
"index": "metrics-apm*",
}],
time_windows=[{
"duration": "7d",
"type": "rolling",
}],
budgeting_method="timeslices",
objectives=[{
"target": 0.95,
"timeslice_target": 0.95,
"timeslice_window": "5m",
}],
settings={
"sync_delay": "5m",
"frequency": "5m",
})
custom_kql = elasticstack.KibanaSlo("custom_kql",
name="custom kql",
description="custom kql",
kql_custom_indicators=[{
"index": "my-index",
"good": "latency < 300",
"total": "*",
"filter": "labels.groupId: group-0",
"timestamp_field": "custom_timestamp",
}],
time_windows=[{
"duration": "7d",
"type": "rolling",
}],
budgeting_method="timeslices",
objectives=[{
"target": 0.95,
"timeslice_target": 0.95,
"timeslice_window": "5m",
}],
settings={
"sync_delay": "5m",
"frequency": "5m",
})
# Object-form KQL (filter_kql, good_kql, total_kql) and optional settings.sync_field / enabled
# (see resource schema). Use the attribute form `filter_kql = { kql_query = "..." }` inside
# `kql_custom_indicator`, not a nested `filter_kql { }` block.
kql_object_form = elasticstack.KibanaSlo("kql_object_form",
name="kql object form example",
description="KQL with object-form union and managed enabled state",
enabled=True,
kql_custom_indicators=[{
"index": "my-index",
"filter_kql": {
"kql_query": "service.name: checkout",
},
"good_kql": {
"kql_query": "http.response.status_code: 200",
},
"total_kql": {
"kql_query": "*",
},
}],
time_windows=[{
"duration": "7d",
"type": "rolling",
}],
budgeting_method="timeslices",
objectives=[{
"target": 0.95,
"timeslice_target": 0.95,
"timeslice_window": "5m",
}],
settings={
"sync_delay": "5m",
"frequency": "5m",
"sync_field": "@timestamp",
})
#Available from 8.10.0
custom_histogram = elasticstack.KibanaSlo("custom_histogram",
name="custom histogram",
description="custom histogram",
histogram_custom_indicators=[{
"index": "my-index",
"goods": [{
"field": "test",
"aggregation": "value_count",
"filter": "latency < 300",
}],
"totals": [{
"field": "test",
"aggregation": "value_count",
}],
"filter": "labels.groupId: group-0",
"timestamp_field": "custom_timestamp",
}],
time_windows=[{
"duration": "7d",
"type": "rolling",
}],
budgeting_method="timeslices",
objectives=[{
"target": 0.95,
"timeslice_target": 0.95,
"timeslice_window": "5m",
}],
tags=[
"tag-1",
"another_tag",
])
#Available from 8.10.0
custom_metric = elasticstack.KibanaSlo("custom_metric",
name="custom kql",
description="custom kql",
metric_custom_indicators=[{
"index": "my-index",
"goods": [{
"metrics": [{
"name": "A",
"aggregation": "sum",
"field": "processor.processed",
}],
"equation": "A",
}],
"totals": [{
"metrics": [{
"name": "A",
"aggregation": "sum",
"field": "processor.accepted",
}],
"equation": "A",
}],
}],
time_windows=[{
"duration": "7d",
"type": "rolling",
}],
budgeting_method="timeslices",
objectives=[{
"target": 0.95,
"timeslice_target": 0.95,
"timeslice_window": "5m",
}])
#Available from 8.12.0
timeslice_metric = elasticstack.KibanaSlo("timeslice_metric",
name="timeslice metric",
description="timeslice metric",
timeslice_metric_indicators=[{
"index": "my-index",
"timestamp_field": "@timestamp",
"metrics": [{
"metrics": [{
"name": "A",
"aggregation": "sum",
"field": "latency",
}],
"equation": "A",
"comparator": "GT",
"threshold": 100,
}],
}],
time_windows=[{
"duration": "7d",
"type": "rolling",
}],
budgeting_method="timeslices",
objectives=[{
"target": 0.95,
"timeslice_target": 0.95,
"timeslice_window": "5m",
}])
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/elasticstack/elasticstack"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := elasticstack.NewKibanaSlo(ctx, "auth_server_latency", &elasticstack.KibanaSloArgs{
Name: pulumi.String("Auth server latency"),
Description: pulumi.String("Ensures auth server is responding in time"),
ApmLatencyIndicators: elasticstack.KibanaSloApmLatencyIndicatorArray{
&elasticstack.KibanaSloApmLatencyIndicatorArgs{
Environment: pulumi.String("production"),
Service: pulumi.String("auth"),
TransactionType: pulumi.String("request"),
TransactionName: pulumi.String("GET /auth"),
Index: pulumi.String("metrics-apm*"),
Threshold: pulumi.Float64(500),
},
},
TimeWindows: elasticstack.KibanaSloTimeWindowArray{
&elasticstack.KibanaSloTimeWindowArgs{
Duration: pulumi.String("7d"),
Type: pulumi.String("rolling"),
},
},
BudgetingMethod: pulumi.String("timeslices"),
Objectives: elasticstack.KibanaSloObjectiveArray{
&elasticstack.KibanaSloObjectiveArgs{
Target: pulumi.Float64(0.95),
TimesliceTarget: pulumi.Float64(0.95),
TimesliceWindow: pulumi.String("5m"),
},
},
Settings: &elasticstack.KibanaSloSettingsArgs{
SyncDelay: pulumi.String("5m"),
Frequency: pulumi.String("5m"),
},
})
if err != nil {
return err
}
_, err = elasticstack.NewKibanaSlo(ctx, "auth_server_availability", &elasticstack.KibanaSloArgs{
Name: pulumi.String("Auth server latency"),
Description: pulumi.String("Ensures auth server is responding in time"),
ApmAvailabilityIndicators: elasticstack.KibanaSloApmAvailabilityIndicatorArray{
&elasticstack.KibanaSloApmAvailabilityIndicatorArgs{
Environment: pulumi.String("production"),
Service: pulumi.String("my-service"),
TransactionType: pulumi.String("request"),
TransactionName: pulumi.String("GET /sup/dawg"),
Index: pulumi.String("metrics-apm*"),
},
},
TimeWindows: elasticstack.KibanaSloTimeWindowArray{
&elasticstack.KibanaSloTimeWindowArgs{
Duration: pulumi.String("7d"),
Type: pulumi.String("rolling"),
},
},
BudgetingMethod: pulumi.String("timeslices"),
Objectives: elasticstack.KibanaSloObjectiveArray{
&elasticstack.KibanaSloObjectiveArgs{
Target: pulumi.Float64(0.95),
TimesliceTarget: pulumi.Float64(0.95),
TimesliceWindow: pulumi.String("5m"),
},
},
Settings: &elasticstack.KibanaSloSettingsArgs{
SyncDelay: pulumi.String("5m"),
Frequency: pulumi.String("5m"),
},
})
if err != nil {
return err
}
_, err = elasticstack.NewKibanaSlo(ctx, "custom_kql", &elasticstack.KibanaSloArgs{
Name: pulumi.String("custom kql"),
Description: pulumi.String("custom kql"),
KqlCustomIndicators: elasticstack.KibanaSloKqlCustomIndicatorArray{
&elasticstack.KibanaSloKqlCustomIndicatorArgs{
Index: pulumi.String("my-index"),
Good: pulumi.String("latency < 300"),
Total: pulumi.String("*"),
Filter: pulumi.String("labels.groupId: group-0"),
TimestampField: pulumi.String("custom_timestamp"),
},
},
TimeWindows: elasticstack.KibanaSloTimeWindowArray{
&elasticstack.KibanaSloTimeWindowArgs{
Duration: pulumi.String("7d"),
Type: pulumi.String("rolling"),
},
},
BudgetingMethod: pulumi.String("timeslices"),
Objectives: elasticstack.KibanaSloObjectiveArray{
&elasticstack.KibanaSloObjectiveArgs{
Target: pulumi.Float64(0.95),
TimesliceTarget: pulumi.Float64(0.95),
TimesliceWindow: pulumi.String("5m"),
},
},
Settings: &elasticstack.KibanaSloSettingsArgs{
SyncDelay: pulumi.String("5m"),
Frequency: pulumi.String("5m"),
},
})
if err != nil {
return err
}
// Object-form KQL (filter_kql, good_kql, total_kql) and optional settings.sync_field / enabled
// (see resource schema). Use the attribute form `filter_kql = { kql_query = "..." }` inside
// `kql_custom_indicator`, not a nested `filter_kql { }` block.
_, err = elasticstack.NewKibanaSlo(ctx, "kql_object_form", &elasticstack.KibanaSloArgs{
Name: pulumi.String("kql object form example"),
Description: pulumi.String("KQL with object-form union and managed enabled state"),
Enabled: pulumi.Bool(true),
KqlCustomIndicators: elasticstack.KibanaSloKqlCustomIndicatorArray{
&elasticstack.KibanaSloKqlCustomIndicatorArgs{
Index: pulumi.String("my-index"),
FilterKql: &elasticstack.KibanaSloKqlCustomIndicatorFilterKqlArgs{
KqlQuery: pulumi.String("service.name: checkout"),
},
GoodKql: &elasticstack.KibanaSloKqlCustomIndicatorGoodKqlArgs{
KqlQuery: pulumi.String("http.response.status_code: 200"),
},
TotalKql: &elasticstack.KibanaSloKqlCustomIndicatorTotalKqlArgs{
KqlQuery: pulumi.String("*"),
},
},
},
TimeWindows: elasticstack.KibanaSloTimeWindowArray{
&elasticstack.KibanaSloTimeWindowArgs{
Duration: pulumi.String("7d"),
Type: pulumi.String("rolling"),
},
},
BudgetingMethod: pulumi.String("timeslices"),
Objectives: elasticstack.KibanaSloObjectiveArray{
&elasticstack.KibanaSloObjectiveArgs{
Target: pulumi.Float64(0.95),
TimesliceTarget: pulumi.Float64(0.95),
TimesliceWindow: pulumi.String("5m"),
},
},
Settings: &elasticstack.KibanaSloSettingsArgs{
SyncDelay: pulumi.String("5m"),
Frequency: pulumi.String("5m"),
SyncField: pulumi.String("@timestamp"),
},
})
if err != nil {
return err
}
// Available from 8.10.0
_, err = elasticstack.NewKibanaSlo(ctx, "custom_histogram", &elasticstack.KibanaSloArgs{
Name: pulumi.String("custom histogram"),
Description: pulumi.String("custom histogram"),
HistogramCustomIndicators: elasticstack.KibanaSloHistogramCustomIndicatorArray{
&elasticstack.KibanaSloHistogramCustomIndicatorArgs{
Index: pulumi.String("my-index"),
Goods: elasticstack.KibanaSloHistogramCustomIndicatorGoodArray{
&elasticstack.KibanaSloHistogramCustomIndicatorGoodArgs{
Field: pulumi.String("test"),
Aggregation: pulumi.String("value_count"),
Filter: pulumi.String("latency < 300"),
},
},
Totals: elasticstack.KibanaSloHistogramCustomIndicatorTotalArray{
&elasticstack.KibanaSloHistogramCustomIndicatorTotalArgs{
Field: pulumi.String("test"),
Aggregation: pulumi.String("value_count"),
},
},
Filter: pulumi.String("labels.groupId: group-0"),
TimestampField: pulumi.String("custom_timestamp"),
},
},
TimeWindows: elasticstack.KibanaSloTimeWindowArray{
&elasticstack.KibanaSloTimeWindowArgs{
Duration: pulumi.String("7d"),
Type: pulumi.String("rolling"),
},
},
BudgetingMethod: pulumi.String("timeslices"),
Objectives: elasticstack.KibanaSloObjectiveArray{
&elasticstack.KibanaSloObjectiveArgs{
Target: pulumi.Float64(0.95),
TimesliceTarget: pulumi.Float64(0.95),
TimesliceWindow: pulumi.String("5m"),
},
},
Tags: pulumi.StringArray{
pulumi.String("tag-1"),
pulumi.String("another_tag"),
},
})
if err != nil {
return err
}
// Available from 8.10.0
_, err = elasticstack.NewKibanaSlo(ctx, "custom_metric", &elasticstack.KibanaSloArgs{
Name: pulumi.String("custom kql"),
Description: pulumi.String("custom kql"),
MetricCustomIndicators: elasticstack.KibanaSloMetricCustomIndicatorArray{
&elasticstack.KibanaSloMetricCustomIndicatorArgs{
Index: pulumi.String("my-index"),
Goods: elasticstack.KibanaSloMetricCustomIndicatorGoodArray{
&elasticstack.KibanaSloMetricCustomIndicatorGoodArgs{
Metrics: elasticstack.KibanaSloMetricCustomIndicatorGoodMetricArray{
&elasticstack.KibanaSloMetricCustomIndicatorGoodMetricArgs{
Name: pulumi.String("A"),
Aggregation: pulumi.String("sum"),
Field: pulumi.String("processor.processed"),
},
},
Equation: pulumi.String("A"),
},
},
Totals: elasticstack.KibanaSloMetricCustomIndicatorTotalArray{
&elasticstack.KibanaSloMetricCustomIndicatorTotalArgs{
Metrics: elasticstack.KibanaSloMetricCustomIndicatorTotalMetricArray{
&elasticstack.KibanaSloMetricCustomIndicatorTotalMetricArgs{
Name: pulumi.String("A"),
Aggregation: pulumi.String("sum"),
Field: pulumi.String("processor.accepted"),
},
},
Equation: pulumi.String("A"),
},
},
},
},
TimeWindows: elasticstack.KibanaSloTimeWindowArray{
&elasticstack.KibanaSloTimeWindowArgs{
Duration: pulumi.String("7d"),
Type: pulumi.String("rolling"),
},
},
BudgetingMethod: pulumi.String("timeslices"),
Objectives: elasticstack.KibanaSloObjectiveArray{
&elasticstack.KibanaSloObjectiveArgs{
Target: pulumi.Float64(0.95),
TimesliceTarget: pulumi.Float64(0.95),
TimesliceWindow: pulumi.String("5m"),
},
},
})
if err != nil {
return err
}
// Available from 8.12.0
_, err = elasticstack.NewKibanaSlo(ctx, "timeslice_metric", &elasticstack.KibanaSloArgs{
Name: pulumi.String("timeslice metric"),
Description: pulumi.String("timeslice metric"),
TimesliceMetricIndicators: elasticstack.KibanaSloTimesliceMetricIndicatorArray{
&elasticstack.KibanaSloTimesliceMetricIndicatorArgs{
Index: pulumi.String("my-index"),
TimestampField: pulumi.String("@timestamp"),
Metrics: elasticstack.KibanaSloTimesliceMetricIndicatorMetricArray{
&elasticstack.KibanaSloTimesliceMetricIndicatorMetricArgs{
Metrics: elasticstack.KibanaSloTimesliceMetricIndicatorMetricMetricArray{
&elasticstack.KibanaSloTimesliceMetricIndicatorMetricMetricArgs{
Name: pulumi.String("A"),
Aggregation: pulumi.String("sum"),
Field: pulumi.String("latency"),
},
},
Equation: pulumi.String("A"),
Comparator: pulumi.String("GT"),
Threshold: pulumi.Float64(100),
},
},
},
},
TimeWindows: elasticstack.KibanaSloTimeWindowArray{
&elasticstack.KibanaSloTimeWindowArgs{
Duration: pulumi.String("7d"),
Type: pulumi.String("rolling"),
},
},
BudgetingMethod: pulumi.String("timeslices"),
Objectives: elasticstack.KibanaSloObjectiveArray{
&elasticstack.KibanaSloObjectiveArgs{
Target: pulumi.Float64(0.95),
TimesliceTarget: pulumi.Float64(0.95),
TimesliceWindow: pulumi.String("5m"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Elasticstack = Pulumi.Elasticstack;
return await Deployment.RunAsync(() =>
{
var authServerLatency = new Elasticstack.KibanaSlo("auth_server_latency", new()
{
Name = "Auth server latency",
Description = "Ensures auth server is responding in time",
ApmLatencyIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloApmLatencyIndicatorArgs
{
Environment = "production",
Service = "auth",
TransactionType = "request",
TransactionName = "GET /auth",
Index = "metrics-apm*",
Threshold = 500,
},
},
TimeWindows = new[]
{
new Elasticstack.Inputs.KibanaSloTimeWindowArgs
{
Duration = "7d",
Type = "rolling",
},
},
BudgetingMethod = "timeslices",
Objectives = new[]
{
new Elasticstack.Inputs.KibanaSloObjectiveArgs
{
Target = 0.95,
TimesliceTarget = 0.95,
TimesliceWindow = "5m",
},
},
Settings = new Elasticstack.Inputs.KibanaSloSettingsArgs
{
SyncDelay = "5m",
Frequency = "5m",
},
});
var authServerAvailability = new Elasticstack.KibanaSlo("auth_server_availability", new()
{
Name = "Auth server latency",
Description = "Ensures auth server is responding in time",
ApmAvailabilityIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloApmAvailabilityIndicatorArgs
{
Environment = "production",
Service = "my-service",
TransactionType = "request",
TransactionName = "GET /sup/dawg",
Index = "metrics-apm*",
},
},
TimeWindows = new[]
{
new Elasticstack.Inputs.KibanaSloTimeWindowArgs
{
Duration = "7d",
Type = "rolling",
},
},
BudgetingMethod = "timeslices",
Objectives = new[]
{
new Elasticstack.Inputs.KibanaSloObjectiveArgs
{
Target = 0.95,
TimesliceTarget = 0.95,
TimesliceWindow = "5m",
},
},
Settings = new Elasticstack.Inputs.KibanaSloSettingsArgs
{
SyncDelay = "5m",
Frequency = "5m",
},
});
var customKql = new Elasticstack.KibanaSlo("custom_kql", new()
{
Name = "custom kql",
Description = "custom kql",
KqlCustomIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorArgs
{
Index = "my-index",
Good = "latency < 300",
Total = "*",
Filter = "labels.groupId: group-0",
TimestampField = "custom_timestamp",
},
},
TimeWindows = new[]
{
new Elasticstack.Inputs.KibanaSloTimeWindowArgs
{
Duration = "7d",
Type = "rolling",
},
},
BudgetingMethod = "timeslices",
Objectives = new[]
{
new Elasticstack.Inputs.KibanaSloObjectiveArgs
{
Target = 0.95,
TimesliceTarget = 0.95,
TimesliceWindow = "5m",
},
},
Settings = new Elasticstack.Inputs.KibanaSloSettingsArgs
{
SyncDelay = "5m",
Frequency = "5m",
},
});
// Object-form KQL (filter_kql, good_kql, total_kql) and optional settings.sync_field / enabled
// (see resource schema). Use the attribute form `filter_kql = { kql_query = "..." }` inside
// `kql_custom_indicator`, not a nested `filter_kql { }` block.
var kqlObjectForm = new Elasticstack.KibanaSlo("kql_object_form", new()
{
Name = "kql object form example",
Description = "KQL with object-form union and managed enabled state",
Enabled = true,
KqlCustomIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorArgs
{
Index = "my-index",
FilterKql = new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorFilterKqlArgs
{
KqlQuery = "service.name: checkout",
},
GoodKql = new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorGoodKqlArgs
{
KqlQuery = "http.response.status_code: 200",
},
TotalKql = new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorTotalKqlArgs
{
KqlQuery = "*",
},
},
},
TimeWindows = new[]
{
new Elasticstack.Inputs.KibanaSloTimeWindowArgs
{
Duration = "7d",
Type = "rolling",
},
},
BudgetingMethod = "timeslices",
Objectives = new[]
{
new Elasticstack.Inputs.KibanaSloObjectiveArgs
{
Target = 0.95,
TimesliceTarget = 0.95,
TimesliceWindow = "5m",
},
},
Settings = new Elasticstack.Inputs.KibanaSloSettingsArgs
{
SyncDelay = "5m",
Frequency = "5m",
SyncField = "@timestamp",
},
});
//Available from 8.10.0
var customHistogram = new Elasticstack.KibanaSlo("custom_histogram", new()
{
Name = "custom histogram",
Description = "custom histogram",
HistogramCustomIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloHistogramCustomIndicatorArgs
{
Index = "my-index",
Goods = new[]
{
new Elasticstack.Inputs.KibanaSloHistogramCustomIndicatorGoodArgs
{
Field = "test",
Aggregation = "value_count",
Filter = "latency < 300",
},
},
Totals = new[]
{
new Elasticstack.Inputs.KibanaSloHistogramCustomIndicatorTotalArgs
{
Field = "test",
Aggregation = "value_count",
},
},
Filter = "labels.groupId: group-0",
TimestampField = "custom_timestamp",
},
},
TimeWindows = new[]
{
new Elasticstack.Inputs.KibanaSloTimeWindowArgs
{
Duration = "7d",
Type = "rolling",
},
},
BudgetingMethod = "timeslices",
Objectives = new[]
{
new Elasticstack.Inputs.KibanaSloObjectiveArgs
{
Target = 0.95,
TimesliceTarget = 0.95,
TimesliceWindow = "5m",
},
},
Tags = new[]
{
"tag-1",
"another_tag",
},
});
//Available from 8.10.0
var customMetric = new Elasticstack.KibanaSlo("custom_metric", new()
{
Name = "custom kql",
Description = "custom kql",
MetricCustomIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorArgs
{
Index = "my-index",
Goods = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorGoodArgs
{
Metrics = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorGoodMetricArgs
{
Name = "A",
Aggregation = "sum",
Field = "processor.processed",
},
},
Equation = "A",
},
},
Totals = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorTotalArgs
{
Metrics = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorTotalMetricArgs
{
Name = "A",
Aggregation = "sum",
Field = "processor.accepted",
},
},
Equation = "A",
},
},
},
},
TimeWindows = new[]
{
new Elasticstack.Inputs.KibanaSloTimeWindowArgs
{
Duration = "7d",
Type = "rolling",
},
},
BudgetingMethod = "timeslices",
Objectives = new[]
{
new Elasticstack.Inputs.KibanaSloObjectiveArgs
{
Target = 0.95,
TimesliceTarget = 0.95,
TimesliceWindow = "5m",
},
},
});
//Available from 8.12.0
var timesliceMetric = new Elasticstack.KibanaSlo("timeslice_metric", new()
{
Name = "timeslice metric",
Description = "timeslice metric",
TimesliceMetricIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloTimesliceMetricIndicatorArgs
{
Index = "my-index",
TimestampField = "@timestamp",
Metrics = new[]
{
new Elasticstack.Inputs.KibanaSloTimesliceMetricIndicatorMetricArgs
{
Metrics = new[]
{
new Elasticstack.Inputs.KibanaSloTimesliceMetricIndicatorMetricMetricArgs
{
Name = "A",
Aggregation = "sum",
Field = "latency",
},
},
Equation = "A",
Comparator = "GT",
Threshold = 100,
},
},
},
},
TimeWindows = new[]
{
new Elasticstack.Inputs.KibanaSloTimeWindowArgs
{
Duration = "7d",
Type = "rolling",
},
},
BudgetingMethod = "timeslices",
Objectives = new[]
{
new Elasticstack.Inputs.KibanaSloObjectiveArgs
{
Target = 0.95,
TimesliceTarget = 0.95,
TimesliceWindow = "5m",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.elasticstack.KibanaSlo;
import com.pulumi.elasticstack.KibanaSloArgs;
import com.pulumi.elasticstack.inputs.KibanaSloApmLatencyIndicatorArgs;
import com.pulumi.elasticstack.inputs.KibanaSloTimeWindowArgs;
import com.pulumi.elasticstack.inputs.KibanaSloObjectiveArgs;
import com.pulumi.elasticstack.inputs.KibanaSloSettingsArgs;
import com.pulumi.elasticstack.inputs.KibanaSloApmAvailabilityIndicatorArgs;
import com.pulumi.elasticstack.inputs.KibanaSloKqlCustomIndicatorArgs;
import com.pulumi.elasticstack.inputs.KibanaSloKqlCustomIndicatorFilterKqlArgs;
import com.pulumi.elasticstack.inputs.KibanaSloKqlCustomIndicatorGoodKqlArgs;
import com.pulumi.elasticstack.inputs.KibanaSloKqlCustomIndicatorTotalKqlArgs;
import com.pulumi.elasticstack.inputs.KibanaSloHistogramCustomIndicatorArgs;
import com.pulumi.elasticstack.inputs.KibanaSloMetricCustomIndicatorArgs;
import com.pulumi.elasticstack.inputs.KibanaSloTimesliceMetricIndicatorArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var authServerLatency = new KibanaSlo("authServerLatency", KibanaSloArgs.builder()
.name("Auth server latency")
.description("Ensures auth server is responding in time")
.apmLatencyIndicators(KibanaSloApmLatencyIndicatorArgs.builder()
.environment("production")
.service("auth")
.transactionType("request")
.transactionName("GET /auth")
.index("metrics-apm*")
.threshold(500.0)
.build())
.timeWindows(KibanaSloTimeWindowArgs.builder()
.duration("7d")
.type("rolling")
.build())
.budgetingMethod("timeslices")
.objectives(KibanaSloObjectiveArgs.builder()
.target(0.95)
.timesliceTarget(0.95)
.timesliceWindow("5m")
.build())
.settings(KibanaSloSettingsArgs.builder()
.syncDelay("5m")
.frequency("5m")
.build())
.build());
var authServerAvailability = new KibanaSlo("authServerAvailability", KibanaSloArgs.builder()
.name("Auth server latency")
.description("Ensures auth server is responding in time")
.apmAvailabilityIndicators(KibanaSloApmAvailabilityIndicatorArgs.builder()
.environment("production")
.service("my-service")
.transactionType("request")
.transactionName("GET /sup/dawg")
.index("metrics-apm*")
.build())
.timeWindows(KibanaSloTimeWindowArgs.builder()
.duration("7d")
.type("rolling")
.build())
.budgetingMethod("timeslices")
.objectives(KibanaSloObjectiveArgs.builder()
.target(0.95)
.timesliceTarget(0.95)
.timesliceWindow("5m")
.build())
.settings(KibanaSloSettingsArgs.builder()
.syncDelay("5m")
.frequency("5m")
.build())
.build());
var customKql = new KibanaSlo("customKql", KibanaSloArgs.builder()
.name("custom kql")
.description("custom kql")
.kqlCustomIndicators(KibanaSloKqlCustomIndicatorArgs.builder()
.index("my-index")
.good("latency < 300")
.total("*")
.filter("labels.groupId: group-0")
.timestampField("custom_timestamp")
.build())
.timeWindows(KibanaSloTimeWindowArgs.builder()
.duration("7d")
.type("rolling")
.build())
.budgetingMethod("timeslices")
.objectives(KibanaSloObjectiveArgs.builder()
.target(0.95)
.timesliceTarget(0.95)
.timesliceWindow("5m")
.build())
.settings(KibanaSloSettingsArgs.builder()
.syncDelay("5m")
.frequency("5m")
.build())
.build());
// Object-form KQL (filter_kql, good_kql, total_kql) and optional settings.sync_field / enabled
// (see resource schema). Use the attribute form `filter_kql = { kql_query = "..." }` inside
// `kql_custom_indicator`, not a nested `filter_kql { }` block.
var kqlObjectForm = new KibanaSlo("kqlObjectForm", KibanaSloArgs.builder()
.name("kql object form example")
.description("KQL with object-form union and managed enabled state")
.enabled(true)
.kqlCustomIndicators(KibanaSloKqlCustomIndicatorArgs.builder()
.index("my-index")
.filterKql(KibanaSloKqlCustomIndicatorFilterKqlArgs.builder()
.kqlQuery("service.name: checkout")
.build())
.goodKql(KibanaSloKqlCustomIndicatorGoodKqlArgs.builder()
.kqlQuery("http.response.status_code: 200")
.build())
.totalKql(KibanaSloKqlCustomIndicatorTotalKqlArgs.builder()
.kqlQuery("*")
.build())
.build())
.timeWindows(KibanaSloTimeWindowArgs.builder()
.duration("7d")
.type("rolling")
.build())
.budgetingMethod("timeslices")
.objectives(KibanaSloObjectiveArgs.builder()
.target(0.95)
.timesliceTarget(0.95)
.timesliceWindow("5m")
.build())
.settings(KibanaSloSettingsArgs.builder()
.syncDelay("5m")
.frequency("5m")
.syncField("@timestamp")
.build())
.build());
//Available from 8.10.0
var customHistogram = new KibanaSlo("customHistogram", KibanaSloArgs.builder()
.name("custom histogram")
.description("custom histogram")
.histogramCustomIndicators(KibanaSloHistogramCustomIndicatorArgs.builder()
.index("my-index")
.goods(KibanaSloHistogramCustomIndicatorGoodArgs.builder()
.field("test")
.aggregation("value_count")
.filter("latency < 300")
.build())
.totals(KibanaSloHistogramCustomIndicatorTotalArgs.builder()
.field("test")
.aggregation("value_count")
.build())
.filter("labels.groupId: group-0")
.timestampField("custom_timestamp")
.build())
.timeWindows(KibanaSloTimeWindowArgs.builder()
.duration("7d")
.type("rolling")
.build())
.budgetingMethod("timeslices")
.objectives(KibanaSloObjectiveArgs.builder()
.target(0.95)
.timesliceTarget(0.95)
.timesliceWindow("5m")
.build())
.tags(
"tag-1",
"another_tag")
.build());
//Available from 8.10.0
var customMetric = new KibanaSlo("customMetric", KibanaSloArgs.builder()
.name("custom kql")
.description("custom kql")
.metricCustomIndicators(KibanaSloMetricCustomIndicatorArgs.builder()
.index("my-index")
.goods(KibanaSloMetricCustomIndicatorGoodArgs.builder()
.metrics(KibanaSloMetricCustomIndicatorGoodMetricArgs.builder()
.name("A")
.aggregation("sum")
.field("processor.processed")
.build())
.equation("A")
.build())
.totals(KibanaSloMetricCustomIndicatorTotalArgs.builder()
.metrics(KibanaSloMetricCustomIndicatorTotalMetricArgs.builder()
.name("A")
.aggregation("sum")
.field("processor.accepted")
.build())
.equation("A")
.build())
.build())
.timeWindows(KibanaSloTimeWindowArgs.builder()
.duration("7d")
.type("rolling")
.build())
.budgetingMethod("timeslices")
.objectives(KibanaSloObjectiveArgs.builder()
.target(0.95)
.timesliceTarget(0.95)
.timesliceWindow("5m")
.build())
.build());
//Available from 8.12.0
var timesliceMetric = new KibanaSlo("timesliceMetric", KibanaSloArgs.builder()
.name("timeslice metric")
.description("timeslice metric")
.timesliceMetricIndicators(KibanaSloTimesliceMetricIndicatorArgs.builder()
.index("my-index")
.timestampField("@timestamp")
.metrics(KibanaSloTimesliceMetricIndicatorMetricArgs.builder()
.metrics(KibanaSloTimesliceMetricIndicatorMetricMetricArgs.builder()
.name("A")
.aggregation("sum")
.field("latency")
.build())
.equation("A")
.comparator("GT")
.threshold(100.0)
.build())
.build())
.timeWindows(KibanaSloTimeWindowArgs.builder()
.duration("7d")
.type("rolling")
.build())
.budgetingMethod("timeslices")
.objectives(KibanaSloObjectiveArgs.builder()
.target(0.95)
.timesliceTarget(0.95)
.timesliceWindow("5m")
.build())
.build());
}
}
resources:
authServerLatency:
type: elasticstack:KibanaSlo
name: auth_server_latency
properties:
name: Auth server latency
description: Ensures auth server is responding in time
apmLatencyIndicators:
- environment: production
service: auth
transactionType: request
transactionName: GET /auth
index: metrics-apm*
threshold: 500
timeWindows:
- duration: 7d
type: rolling
budgetingMethod: timeslices
objectives:
- target: 0.95
timesliceTarget: 0.95
timesliceWindow: 5m
settings:
syncDelay: 5m
frequency: 5m
authServerAvailability:
type: elasticstack:KibanaSlo
name: auth_server_availability
properties:
name: Auth server latency
description: Ensures auth server is responding in time
apmAvailabilityIndicators:
- environment: production
service: my-service
transactionType: request
transactionName: GET /sup/dawg
index: metrics-apm*
timeWindows:
- duration: 7d
type: rolling
budgetingMethod: timeslices
objectives:
- target: 0.95
timesliceTarget: 0.95
timesliceWindow: 5m
settings:
syncDelay: 5m
frequency: 5m
customKql:
type: elasticstack:KibanaSlo
name: custom_kql
properties:
name: custom kql
description: custom kql
kqlCustomIndicators:
- index: my-index
good: latency < 300
total: '*'
filter: 'labels.groupId: group-0'
timestampField: custom_timestamp
timeWindows:
- duration: 7d
type: rolling
budgetingMethod: timeslices
objectives:
- target: 0.95
timesliceTarget: 0.95
timesliceWindow: 5m
settings:
syncDelay: 5m
frequency: 5m
# Object-form KQL (filter_kql, good_kql, total_kql) and optional settings.sync_field / enabled
# (see resource schema). Use the attribute form `filter_kql = { kql_query = "..." }` inside
# `kql_custom_indicator`, not a nested `filter_kql { }` block.
kqlObjectForm:
type: elasticstack:KibanaSlo
name: kql_object_form
properties:
name: kql object form example
description: KQL with object-form union and managed enabled state
enabled: true
kqlCustomIndicators:
- index: my-index
filterKql:
kqlQuery: 'service.name: checkout'
goodKql:
kqlQuery: 'http.response.status_code: 200'
totalKql:
kqlQuery: '*'
timeWindows:
- duration: 7d
type: rolling
budgetingMethod: timeslices
objectives:
- target: 0.95
timesliceTarget: 0.95
timesliceWindow: 5m
settings:
syncDelay: 5m
frequency: 5m
syncField: '@timestamp'
#Available from 8.10.0
customHistogram:
type: elasticstack:KibanaSlo
name: custom_histogram
properties:
name: custom histogram
description: custom histogram
histogramCustomIndicators:
- index: my-index
goods:
- field: test
aggregation: value_count
filter: latency < 300
totals:
- field: test
aggregation: value_count
filter: 'labels.groupId: group-0'
timestampField: custom_timestamp
timeWindows:
- duration: 7d
type: rolling
budgetingMethod: timeslices
objectives:
- target: 0.95
timesliceTarget: 0.95
timesliceWindow: 5m
tags:
- tag-1
- another_tag
# Available from 8.10.0
customMetric:
type: elasticstack:KibanaSlo
name: custom_metric
properties:
name: custom kql
description: custom kql
metricCustomIndicators:
- index: my-index
goods:
- metrics:
- name: A
aggregation: sum
field: processor.processed
equation: A
totals:
- metrics:
- name: A
aggregation: sum
field: processor.accepted
equation: A
timeWindows:
- duration: 7d
type: rolling
budgetingMethod: timeslices
objectives:
- target: 0.95
timesliceTarget: 0.95
timesliceWindow: 5m
# Available from 8.12.0
timesliceMetric:
type: elasticstack:KibanaSlo
name: timeslice_metric
properties:
name: timeslice metric
description: timeslice metric
timesliceMetricIndicators:
- index: my-index
timestampField: '@timestamp'
metrics:
- metrics:
- name: A
aggregation: sum
field: latency
equation: A
comparator: GT
threshold: 100
timeWindows:
- duration: 7d
type: rolling
budgetingMethod: timeslices
objectives:
- target: 0.95
timesliceTarget: 0.95
timesliceWindow: 5m
Example coming soon!
Create KibanaSlo Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new KibanaSlo(name: string, args: KibanaSloArgs, opts?: CustomResourceOptions);@overload
def KibanaSlo(resource_name: str,
args: KibanaSloArgs,
opts: Optional[ResourceOptions] = None)
@overload
def KibanaSlo(resource_name: str,
opts: Optional[ResourceOptions] = None,
budgeting_method: Optional[str] = None,
description: Optional[str] = None,
kibana_connections: Optional[Sequence[KibanaSloKibanaConnectionArgs]] = None,
name: Optional[str] = None,
apm_latency_indicators: Optional[Sequence[KibanaSloApmLatencyIndicatorArgs]] = None,
enabled: Optional[bool] = None,
group_bies: Optional[Sequence[str]] = None,
histogram_custom_indicators: Optional[Sequence[KibanaSloHistogramCustomIndicatorArgs]] = None,
apm_availability_indicators: Optional[Sequence[KibanaSloApmAvailabilityIndicatorArgs]] = None,
kql_custom_indicators: Optional[Sequence[KibanaSloKqlCustomIndicatorArgs]] = None,
metric_custom_indicators: Optional[Sequence[KibanaSloMetricCustomIndicatorArgs]] = None,
artifacts: Optional[KibanaSloArtifactsArgs] = None,
objectives: Optional[Sequence[KibanaSloObjectiveArgs]] = None,
settings: Optional[KibanaSloSettingsArgs] = None,
slo_id: Optional[str] = None,
space_id: Optional[str] = None,
tags: Optional[Sequence[str]] = None,
time_windows: Optional[Sequence[KibanaSloTimeWindowArgs]] = None,
timeslice_metric_indicators: Optional[Sequence[KibanaSloTimesliceMetricIndicatorArgs]] = None)func NewKibanaSlo(ctx *Context, name string, args KibanaSloArgs, opts ...ResourceOption) (*KibanaSlo, error)public KibanaSlo(string name, KibanaSloArgs args, CustomResourceOptions? opts = null)
public KibanaSlo(String name, KibanaSloArgs args)
public KibanaSlo(String name, KibanaSloArgs args, CustomResourceOptions options)
type: elasticstack:KibanaSlo
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "elasticstack_kibanaslo" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args KibanaSloArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args KibanaSloArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args KibanaSloArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args KibanaSloArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args KibanaSloArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var kibanaSloResource = new Elasticstack.KibanaSlo("kibanaSloResource", new()
{
BudgetingMethod = "string",
Description = "string",
KibanaConnections = new[]
{
new Elasticstack.Inputs.KibanaSloKibanaConnectionArgs
{
ApiKey = "string",
BearerToken = "string",
CaCerts = new[]
{
"string",
},
Endpoints = new[]
{
"string",
},
Insecure = false,
Password = "string",
Username = "string",
},
},
Name = "string",
ApmLatencyIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloApmLatencyIndicatorArgs
{
Environment = "string",
Index = "string",
Service = "string",
Threshold = 0,
TransactionName = "string",
TransactionType = "string",
Filter = "string",
},
},
Enabled = false,
GroupBies = new[]
{
"string",
},
HistogramCustomIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloHistogramCustomIndicatorArgs
{
Index = "string",
DataViewId = "string",
Filter = "string",
Goods = new[]
{
new Elasticstack.Inputs.KibanaSloHistogramCustomIndicatorGoodArgs
{
Aggregation = "string",
Field = "string",
Filter = "string",
From = 0,
To = 0,
},
},
TimestampField = "string",
Totals = new[]
{
new Elasticstack.Inputs.KibanaSloHistogramCustomIndicatorTotalArgs
{
Aggregation = "string",
Field = "string",
Filter = "string",
From = 0,
To = 0,
},
},
},
},
ApmAvailabilityIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloApmAvailabilityIndicatorArgs
{
Environment = "string",
Index = "string",
Service = "string",
TransactionName = "string",
TransactionType = "string",
Filter = "string",
},
},
KqlCustomIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorArgs
{
Index = "string",
DataViewId = "string",
Filter = "string",
FilterKql = new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorFilterKqlArgs
{
Filters = new[]
{
new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorFilterKqlFilterArgs
{
Query = "string",
},
},
KqlQuery = "string",
},
Good = "string",
GoodKql = new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorGoodKqlArgs
{
Filters = new[]
{
new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorGoodKqlFilterArgs
{
Query = "string",
},
},
KqlQuery = "string",
},
TimestampField = "string",
Total = "string",
TotalKql = new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorTotalKqlArgs
{
Filters = new[]
{
new Elasticstack.Inputs.KibanaSloKqlCustomIndicatorTotalKqlFilterArgs
{
Query = "string",
},
},
KqlQuery = "string",
},
},
},
MetricCustomIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorArgs
{
Index = "string",
DataViewId = "string",
Filter = "string",
Goods = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorGoodArgs
{
Equation = "string",
Metrics = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorGoodMetricArgs
{
Aggregation = "string",
Name = "string",
Field = "string",
Filter = "string",
},
},
},
},
TimestampField = "string",
Totals = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorTotalArgs
{
Equation = "string",
Metrics = new[]
{
new Elasticstack.Inputs.KibanaSloMetricCustomIndicatorTotalMetricArgs
{
Aggregation = "string",
Name = "string",
Field = "string",
Filter = "string",
},
},
},
},
},
},
Artifacts = new Elasticstack.Inputs.KibanaSloArtifactsArgs
{
Dashboards = new[]
{
new Elasticstack.Inputs.KibanaSloArtifactsDashboardArgs
{
Id = "string",
},
},
},
Objectives = new[]
{
new Elasticstack.Inputs.KibanaSloObjectiveArgs
{
Target = 0,
TimesliceTarget = 0,
TimesliceWindow = "string",
},
},
Settings = new Elasticstack.Inputs.KibanaSloSettingsArgs
{
Frequency = "string",
PreventInitialBackfill = false,
SyncDelay = "string",
SyncField = "string",
},
SloId = "string",
SpaceId = "string",
Tags = new[]
{
"string",
},
TimeWindows = new[]
{
new Elasticstack.Inputs.KibanaSloTimeWindowArgs
{
Duration = "string",
Type = "string",
},
},
TimesliceMetricIndicators = new[]
{
new Elasticstack.Inputs.KibanaSloTimesliceMetricIndicatorArgs
{
Index = "string",
TimestampField = "string",
DataViewId = "string",
Filter = "string",
Metrics = new[]
{
new Elasticstack.Inputs.KibanaSloTimesliceMetricIndicatorMetricArgs
{
Comparator = "string",
Equation = "string",
Threshold = 0,
Metrics = new[]
{
new Elasticstack.Inputs.KibanaSloTimesliceMetricIndicatorMetricMetricArgs
{
Aggregation = "string",
Name = "string",
Field = "string",
Filter = "string",
Percentile = 0,
},
},
},
},
},
},
});
example, err := elasticstack.NewKibanaSlo(ctx, "kibanaSloResource", &elasticstack.KibanaSloArgs{
BudgetingMethod: pulumi.String("string"),
Description: pulumi.String("string"),
KibanaConnections: elasticstack.KibanaSloKibanaConnectionArray{
&elasticstack.KibanaSloKibanaConnectionArgs{
ApiKey: pulumi.String("string"),
BearerToken: pulumi.String("string"),
CaCerts: pulumi.StringArray{
pulumi.String("string"),
},
Endpoints: pulumi.StringArray{
pulumi.String("string"),
},
Insecure: pulumi.Bool(false),
Password: pulumi.String("string"),
Username: pulumi.String("string"),
},
},
Name: pulumi.String("string"),
ApmLatencyIndicators: elasticstack.KibanaSloApmLatencyIndicatorArray{
&elasticstack.KibanaSloApmLatencyIndicatorArgs{
Environment: pulumi.String("string"),
Index: pulumi.String("string"),
Service: pulumi.String("string"),
Threshold: pulumi.Float64(0),
TransactionName: pulumi.String("string"),
TransactionType: pulumi.String("string"),
Filter: pulumi.String("string"),
},
},
Enabled: pulumi.Bool(false),
GroupBies: pulumi.StringArray{
pulumi.String("string"),
},
HistogramCustomIndicators: elasticstack.KibanaSloHistogramCustomIndicatorArray{
&elasticstack.KibanaSloHistogramCustomIndicatorArgs{
Index: pulumi.String("string"),
DataViewId: pulumi.String("string"),
Filter: pulumi.String("string"),
Goods: elasticstack.KibanaSloHistogramCustomIndicatorGoodArray{
&elasticstack.KibanaSloHistogramCustomIndicatorGoodArgs{
Aggregation: pulumi.String("string"),
Field: pulumi.String("string"),
Filter: pulumi.String("string"),
From: pulumi.Float64(0),
To: pulumi.Float64(0),
},
},
TimestampField: pulumi.String("string"),
Totals: elasticstack.KibanaSloHistogramCustomIndicatorTotalArray{
&elasticstack.KibanaSloHistogramCustomIndicatorTotalArgs{
Aggregation: pulumi.String("string"),
Field: pulumi.String("string"),
Filter: pulumi.String("string"),
From: pulumi.Float64(0),
To: pulumi.Float64(0),
},
},
},
},
ApmAvailabilityIndicators: elasticstack.KibanaSloApmAvailabilityIndicatorArray{
&elasticstack.KibanaSloApmAvailabilityIndicatorArgs{
Environment: pulumi.String("string"),
Index: pulumi.String("string"),
Service: pulumi.String("string"),
TransactionName: pulumi.String("string"),
TransactionType: pulumi.String("string"),
Filter: pulumi.String("string"),
},
},
KqlCustomIndicators: elasticstack.KibanaSloKqlCustomIndicatorArray{
&elasticstack.KibanaSloKqlCustomIndicatorArgs{
Index: pulumi.String("string"),
DataViewId: pulumi.String("string"),
Filter: pulumi.String("string"),
FilterKql: &elasticstack.KibanaSloKqlCustomIndicatorFilterKqlArgs{
Filters: elasticstack.KibanaSloKqlCustomIndicatorFilterKqlFilterArray{
&elasticstack.KibanaSloKqlCustomIndicatorFilterKqlFilterArgs{
Query: pulumi.String("string"),
},
},
KqlQuery: pulumi.String("string"),
},
Good: pulumi.String("string"),
GoodKql: &elasticstack.KibanaSloKqlCustomIndicatorGoodKqlArgs{
Filters: elasticstack.KibanaSloKqlCustomIndicatorGoodKqlFilterArray{
&elasticstack.KibanaSloKqlCustomIndicatorGoodKqlFilterArgs{
Query: pulumi.String("string"),
},
},
KqlQuery: pulumi.String("string"),
},
TimestampField: pulumi.String("string"),
Total: pulumi.String("string"),
TotalKql: &elasticstack.KibanaSloKqlCustomIndicatorTotalKqlArgs{
Filters: elasticstack.KibanaSloKqlCustomIndicatorTotalKqlFilterArray{
&elasticstack.KibanaSloKqlCustomIndicatorTotalKqlFilterArgs{
Query: pulumi.String("string"),
},
},
KqlQuery: pulumi.String("string"),
},
},
},
MetricCustomIndicators: elasticstack.KibanaSloMetricCustomIndicatorArray{
&elasticstack.KibanaSloMetricCustomIndicatorArgs{
Index: pulumi.String("string"),
DataViewId: pulumi.String("string"),
Filter: pulumi.String("string"),
Goods: elasticstack.KibanaSloMetricCustomIndicatorGoodArray{
&elasticstack.KibanaSloMetricCustomIndicatorGoodArgs{
Equation: pulumi.String("string"),
Metrics: elasticstack.KibanaSloMetricCustomIndicatorGoodMetricArray{
&elasticstack.KibanaSloMetricCustomIndicatorGoodMetricArgs{
Aggregation: pulumi.String("string"),
Name: pulumi.String("string"),
Field: pulumi.String("string"),
Filter: pulumi.String("string"),
},
},
},
},
TimestampField: pulumi.String("string"),
Totals: elasticstack.KibanaSloMetricCustomIndicatorTotalArray{
&elasticstack.KibanaSloMetricCustomIndicatorTotalArgs{
Equation: pulumi.String("string"),
Metrics: elasticstack.KibanaSloMetricCustomIndicatorTotalMetricArray{
&elasticstack.KibanaSloMetricCustomIndicatorTotalMetricArgs{
Aggregation: pulumi.String("string"),
Name: pulumi.String("string"),
Field: pulumi.String("string"),
Filter: pulumi.String("string"),
},
},
},
},
},
},
Artifacts: &elasticstack.KibanaSloArtifactsArgs{
Dashboards: elasticstack.KibanaSloArtifactsDashboardArray{
&elasticstack.KibanaSloArtifactsDashboardArgs{
Id: pulumi.String("string"),
},
},
},
Objectives: elasticstack.KibanaSloObjectiveArray{
&elasticstack.KibanaSloObjectiveArgs{
Target: pulumi.Float64(0),
TimesliceTarget: pulumi.Float64(0),
TimesliceWindow: pulumi.String("string"),
},
},
Settings: &elasticstack.KibanaSloSettingsArgs{
Frequency: pulumi.String("string"),
PreventInitialBackfill: pulumi.Bool(false),
SyncDelay: pulumi.String("string"),
SyncField: pulumi.String("string"),
},
SloId: pulumi.String("string"),
SpaceId: pulumi.String("string"),
Tags: pulumi.StringArray{
pulumi.String("string"),
},
TimeWindows: elasticstack.KibanaSloTimeWindowArray{
&elasticstack.KibanaSloTimeWindowArgs{
Duration: pulumi.String("string"),
Type: pulumi.String("string"),
},
},
TimesliceMetricIndicators: elasticstack.KibanaSloTimesliceMetricIndicatorArray{
&elasticstack.KibanaSloTimesliceMetricIndicatorArgs{
Index: pulumi.String("string"),
TimestampField: pulumi.String("string"),
DataViewId: pulumi.String("string"),
Filter: pulumi.String("string"),
Metrics: elasticstack.KibanaSloTimesliceMetricIndicatorMetricArray{
&elasticstack.KibanaSloTimesliceMetricIndicatorMetricArgs{
Comparator: pulumi.String("string"),
Equation: pulumi.String("string"),
Threshold: pulumi.Float64(0),
Metrics: elasticstack.KibanaSloTimesliceMetricIndicatorMetricMetricArray{
&elasticstack.KibanaSloTimesliceMetricIndicatorMetricMetricArgs{
Aggregation: pulumi.String("string"),
Name: pulumi.String("string"),
Field: pulumi.String("string"),
Filter: pulumi.String("string"),
Percentile: pulumi.Float64(0),
},
},
},
},
},
},
})
resource "elasticstack_kibanaslo" "kibanaSloResource" {
budgeting_method = "string"
description = "string"
kibana_connections {
api_key = "string"
bearer_token = "string"
ca_certs = ["string"]
endpoints = ["string"]
insecure = false
password = "string"
username = "string"
}
name = "string"
apm_latency_indicators {
environment = "string"
index = "string"
service = "string"
threshold = 0
transaction_name = "string"
transaction_type = "string"
filter = "string"
}
enabled = false
group_bies = ["string"]
histogram_custom_indicators {
index = "string"
data_view_id = "string"
filter = "string"
goods {
aggregation = "string"
field = "string"
filter = "string"
from = 0
to = 0
}
timestamp_field = "string"
totals {
aggregation = "string"
field = "string"
filter = "string"
from = 0
to = 0
}
}
apm_availability_indicators {
environment = "string"
index = "string"
service = "string"
transaction_name = "string"
transaction_type = "string"
filter = "string"
}
kql_custom_indicators {
index = "string"
data_view_id = "string"
filter = "string"
filter_kql = {
filters = [{
"query" = "string"
}]
kql_query = "string"
}
good = "string"
good_kql = {
filters = [{
"query" = "string"
}]
kql_query = "string"
}
timestamp_field = "string"
total = "string"
total_kql = {
filters = [{
"query" = "string"
}]
kql_query = "string"
}
}
metric_custom_indicators {
index = "string"
data_view_id = "string"
filter = "string"
goods {
equation = "string"
metrics {
aggregation = "string"
name = "string"
field = "string"
filter = "string"
}
}
timestamp_field = "string"
totals {
equation = "string"
metrics {
aggregation = "string"
name = "string"
field = "string"
filter = "string"
}
}
}
artifacts = {
dashboards = [{
"id" = "string"
}]
}
objectives {
target = 0
timeslice_target = 0
timeslice_window = "string"
}
settings = {
frequency = "string"
prevent_initial_backfill = false
sync_delay = "string"
sync_field = "string"
}
slo_id = "string"
space_id = "string"
tags = ["string"]
time_windows {
duration = "string"
type = "string"
}
timeslice_metric_indicators {
index = "string"
timestamp_field = "string"
data_view_id = "string"
filter = "string"
metrics {
comparator = "string"
equation = "string"
threshold = 0
metrics {
aggregation = "string"
name = "string"
field = "string"
filter = "string"
percentile = 0
}
}
}
}
var kibanaSloResource = new KibanaSlo("kibanaSloResource", KibanaSloArgs.builder()
.budgetingMethod("string")
.description("string")
.kibanaConnections(KibanaSloKibanaConnectionArgs.builder()
.apiKey("string")
.bearerToken("string")
.caCerts("string")
.endpoints("string")
.insecure(false)
.password("string")
.username("string")
.build())
.name("string")
.apmLatencyIndicators(KibanaSloApmLatencyIndicatorArgs.builder()
.environment("string")
.index("string")
.service("string")
.threshold(0.0)
.transactionName("string")
.transactionType("string")
.filter("string")
.build())
.enabled(false)
.groupBies("string")
.histogramCustomIndicators(KibanaSloHistogramCustomIndicatorArgs.builder()
.index("string")
.dataViewId("string")
.filter("string")
.goods(KibanaSloHistogramCustomIndicatorGoodArgs.builder()
.aggregation("string")
.field("string")
.filter("string")
.from(0.0)
.to(0.0)
.build())
.timestampField("string")
.totals(KibanaSloHistogramCustomIndicatorTotalArgs.builder()
.aggregation("string")
.field("string")
.filter("string")
.from(0.0)
.to(0.0)
.build())
.build())
.apmAvailabilityIndicators(KibanaSloApmAvailabilityIndicatorArgs.builder()
.environment("string")
.index("string")
.service("string")
.transactionName("string")
.transactionType("string")
.filter("string")
.build())
.kqlCustomIndicators(KibanaSloKqlCustomIndicatorArgs.builder()
.index("string")
.dataViewId("string")
.filter("string")
.filterKql(KibanaSloKqlCustomIndicatorFilterKqlArgs.builder()
.filters(KibanaSloKqlCustomIndicatorFilterKqlFilterArgs.builder()
.query("string")
.build())
.kqlQuery("string")
.build())
.good("string")
.goodKql(KibanaSloKqlCustomIndicatorGoodKqlArgs.builder()
.filters(KibanaSloKqlCustomIndicatorGoodKqlFilterArgs.builder()
.query("string")
.build())
.kqlQuery("string")
.build())
.timestampField("string")
.total("string")
.totalKql(KibanaSloKqlCustomIndicatorTotalKqlArgs.builder()
.filters(KibanaSloKqlCustomIndicatorTotalKqlFilterArgs.builder()
.query("string")
.build())
.kqlQuery("string")
.build())
.build())
.metricCustomIndicators(KibanaSloMetricCustomIndicatorArgs.builder()
.index("string")
.dataViewId("string")
.filter("string")
.goods(KibanaSloMetricCustomIndicatorGoodArgs.builder()
.equation("string")
.metrics(KibanaSloMetricCustomIndicatorGoodMetricArgs.builder()
.aggregation("string")
.name("string")
.field("string")
.filter("string")
.build())
.build())
.timestampField("string")
.totals(KibanaSloMetricCustomIndicatorTotalArgs.builder()
.equation("string")
.metrics(KibanaSloMetricCustomIndicatorTotalMetricArgs.builder()
.aggregation("string")
.name("string")
.field("string")
.filter("string")
.build())
.build())
.build())
.artifacts(KibanaSloArtifactsArgs.builder()
.dashboards(KibanaSloArtifactsDashboardArgs.builder()
.id("string")
.build())
.build())
.objectives(KibanaSloObjectiveArgs.builder()
.target(0.0)
.timesliceTarget(0.0)
.timesliceWindow("string")
.build())
.settings(KibanaSloSettingsArgs.builder()
.frequency("string")
.preventInitialBackfill(false)
.syncDelay("string")
.syncField("string")
.build())
.sloId("string")
.spaceId("string")
.tags("string")
.timeWindows(KibanaSloTimeWindowArgs.builder()
.duration("string")
.type("string")
.build())
.timesliceMetricIndicators(KibanaSloTimesliceMetricIndicatorArgs.builder()
.index("string")
.timestampField("string")
.dataViewId("string")
.filter("string")
.metrics(KibanaSloTimesliceMetricIndicatorMetricArgs.builder()
.comparator("string")
.equation("string")
.threshold(0.0)
.metrics(KibanaSloTimesliceMetricIndicatorMetricMetricArgs.builder()
.aggregation("string")
.name("string")
.field("string")
.filter("string")
.percentile(0.0)
.build())
.build())
.build())
.build());
kibana_slo_resource = elasticstack.KibanaSlo("kibanaSloResource",
budgeting_method="string",
description="string",
kibana_connections=[{
"api_key": "string",
"bearer_token": "string",
"ca_certs": ["string"],
"endpoints": ["string"],
"insecure": False,
"password": "string",
"username": "string",
}],
name="string",
apm_latency_indicators=[{
"environment": "string",
"index": "string",
"service": "string",
"threshold": float(0),
"transaction_name": "string",
"transaction_type": "string",
"filter": "string",
}],
enabled=False,
group_bies=["string"],
histogram_custom_indicators=[{
"index": "string",
"data_view_id": "string",
"filter": "string",
"goods": [{
"aggregation": "string",
"field": "string",
"filter": "string",
"from_": float(0),
"to": float(0),
}],
"timestamp_field": "string",
"totals": [{
"aggregation": "string",
"field": "string",
"filter": "string",
"from_": float(0),
"to": float(0),
}],
}],
apm_availability_indicators=[{
"environment": "string",
"index": "string",
"service": "string",
"transaction_name": "string",
"transaction_type": "string",
"filter": "string",
}],
kql_custom_indicators=[{
"index": "string",
"data_view_id": "string",
"filter": "string",
"filter_kql": {
"filters": [{
"query": "string",
}],
"kql_query": "string",
},
"good": "string",
"good_kql": {
"filters": [{
"query": "string",
}],
"kql_query": "string",
},
"timestamp_field": "string",
"total": "string",
"total_kql": {
"filters": [{
"query": "string",
}],
"kql_query": "string",
},
}],
metric_custom_indicators=[{
"index": "string",
"data_view_id": "string",
"filter": "string",
"goods": [{
"equation": "string",
"metrics": [{
"aggregation": "string",
"name": "string",
"field": "string",
"filter": "string",
}],
}],
"timestamp_field": "string",
"totals": [{
"equation": "string",
"metrics": [{
"aggregation": "string",
"name": "string",
"field": "string",
"filter": "string",
}],
}],
}],
artifacts={
"dashboards": [{
"id": "string",
}],
},
objectives=[{
"target": float(0),
"timeslice_target": float(0),
"timeslice_window": "string",
}],
settings={
"frequency": "string",
"prevent_initial_backfill": False,
"sync_delay": "string",
"sync_field": "string",
},
slo_id="string",
space_id="string",
tags=["string"],
time_windows=[{
"duration": "string",
"type": "string",
}],
timeslice_metric_indicators=[{
"index": "string",
"timestamp_field": "string",
"data_view_id": "string",
"filter": "string",
"metrics": [{
"comparator": "string",
"equation": "string",
"threshold": float(0),
"metrics": [{
"aggregation": "string",
"name": "string",
"field": "string",
"filter": "string",
"percentile": float(0),
}],
}],
}])
const kibanaSloResource = new elasticstack.KibanaSlo("kibanaSloResource", {
budgetingMethod: "string",
description: "string",
kibanaConnections: [{
apiKey: "string",
bearerToken: "string",
caCerts: ["string"],
endpoints: ["string"],
insecure: false,
password: "string",
username: "string",
}],
name: "string",
apmLatencyIndicators: [{
environment: "string",
index: "string",
service: "string",
threshold: 0,
transactionName: "string",
transactionType: "string",
filter: "string",
}],
enabled: false,
groupBies: ["string"],
histogramCustomIndicators: [{
index: "string",
dataViewId: "string",
filter: "string",
goods: [{
aggregation: "string",
field: "string",
filter: "string",
from: 0,
to: 0,
}],
timestampField: "string",
totals: [{
aggregation: "string",
field: "string",
filter: "string",
from: 0,
to: 0,
}],
}],
apmAvailabilityIndicators: [{
environment: "string",
index: "string",
service: "string",
transactionName: "string",
transactionType: "string",
filter: "string",
}],
kqlCustomIndicators: [{
index: "string",
dataViewId: "string",
filter: "string",
filterKql: {
filters: [{
query: "string",
}],
kqlQuery: "string",
},
good: "string",
goodKql: {
filters: [{
query: "string",
}],
kqlQuery: "string",
},
timestampField: "string",
total: "string",
totalKql: {
filters: [{
query: "string",
}],
kqlQuery: "string",
},
}],
metricCustomIndicators: [{
index: "string",
dataViewId: "string",
filter: "string",
goods: [{
equation: "string",
metrics: [{
aggregation: "string",
name: "string",
field: "string",
filter: "string",
}],
}],
timestampField: "string",
totals: [{
equation: "string",
metrics: [{
aggregation: "string",
name: "string",
field: "string",
filter: "string",
}],
}],
}],
artifacts: {
dashboards: [{
id: "string",
}],
},
objectives: [{
target: 0,
timesliceTarget: 0,
timesliceWindow: "string",
}],
settings: {
frequency: "string",
preventInitialBackfill: false,
syncDelay: "string",
syncField: "string",
},
sloId: "string",
spaceId: "string",
tags: ["string"],
timeWindows: [{
duration: "string",
type: "string",
}],
timesliceMetricIndicators: [{
index: "string",
timestampField: "string",
dataViewId: "string",
filter: "string",
metrics: [{
comparator: "string",
equation: "string",
threshold: 0,
metrics: [{
aggregation: "string",
name: "string",
field: "string",
filter: "string",
percentile: 0,
}],
}],
}],
});
type: elasticstack:KibanaSlo
properties:
apmAvailabilityIndicators:
- environment: string
filter: string
index: string
service: string
transactionName: string
transactionType: string
apmLatencyIndicators:
- environment: string
filter: string
index: string
service: string
threshold: 0
transactionName: string
transactionType: string
artifacts:
dashboards:
- id: string
budgetingMethod: string
description: string
enabled: false
groupBies:
- string
histogramCustomIndicators:
- dataViewId: string
filter: string
goods:
- aggregation: string
field: string
filter: string
from: 0
to: 0
index: string
timestampField: string
totals:
- aggregation: string
field: string
filter: string
from: 0
to: 0
kibanaConnections:
- apiKey: string
bearerToken: string
caCerts:
- string
endpoints:
- string
insecure: false
password: string
username: string
kqlCustomIndicators:
- dataViewId: string
filter: string
filterKql:
filters:
- query: string
kqlQuery: string
good: string
goodKql:
filters:
- query: string
kqlQuery: string
index: string
timestampField: string
total: string
totalKql:
filters:
- query: string
kqlQuery: string
metricCustomIndicators:
- dataViewId: string
filter: string
goods:
- equation: string
metrics:
- aggregation: string
field: string
filter: string
name: string
index: string
timestampField: string
totals:
- equation: string
metrics:
- aggregation: string
field: string
filter: string
name: string
name: string
objectives:
- target: 0
timesliceTarget: 0
timesliceWindow: string
settings:
frequency: string
preventInitialBackfill: false
syncDelay: string
syncField: string
sloId: string
spaceId: string
tags:
- string
timeWindows:
- duration: string
type: string
timesliceMetricIndicators:
- dataViewId: string
filter: string
index: string
metrics:
- comparator: string
equation: string
metrics:
- aggregation: string
field: string
filter: string
name: string
percentile: 0
threshold: 0
timestampField: string
KibanaSlo Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The KibanaSlo resource accepts the following input properties:
- Budgeting
Method string - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - Description string
- A description for the SLO.
- Apm
Availability List<KibanaIndicators Slo Apm Availability Indicator> - Apm
Latency List<KibanaIndicators Slo Apm Latency Indicator> - Artifacts
Kibana
Slo Artifacts - Links to related assets (for example dashboards) returned and managed with the SLO.
- Enabled bool
- Whether the SLO is enabled in Kibana.
- Group
Bies List<string> - Optional group by fields to use to generate an SLO per distinct value.
- Histogram
Custom List<KibanaIndicators Slo Histogram Custom Indicator> - Kibana
Connections List<KibanaSlo Kibana Connection> - Kibana connection configuration block.
- Kql
Custom List<KibanaIndicators Slo Kql Custom Indicator> - Metric
Custom List<KibanaIndicators Slo Metric Custom Indicator> - Name string
- The name of the SLO.
- Objectives
List<Kibana
Slo Objective> - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- Settings
Kibana
Slo Settings - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- Slo
Id string - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- Space
Id string - An identifier for the space. If space_id is not provided, the default space is used.
- List<string>
- The tags for the SLO.
- Time
Windows List<KibanaSlo Time Window> - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - Timeslice
Metric List<KibanaIndicators Slo Timeslice Metric Indicator> - Defines a timeslice metric indicator for SLO.
- Budgeting
Method string - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - Description string
- A description for the SLO.
- Apm
Availability []KibanaIndicators Slo Apm Availability Indicator Args - Apm
Latency []KibanaIndicators Slo Apm Latency Indicator Args - Artifacts
Kibana
Slo Artifacts Args - Links to related assets (for example dashboards) returned and managed with the SLO.
- Enabled bool
- Whether the SLO is enabled in Kibana.
- Group
Bies []string - Optional group by fields to use to generate an SLO per distinct value.
- Histogram
Custom []KibanaIndicators Slo Histogram Custom Indicator Args - Kibana
Connections []KibanaSlo Kibana Connection Args - Kibana connection configuration block.
- Kql
Custom []KibanaIndicators Slo Kql Custom Indicator Args - Metric
Custom []KibanaIndicators Slo Metric Custom Indicator Args - Name string
- The name of the SLO.
- Objectives
[]Kibana
Slo Objective Args - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- Settings
Kibana
Slo Settings Args - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- Slo
Id string - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- Space
Id string - An identifier for the space. If space_id is not provided, the default space is used.
- []string
- The tags for the SLO.
- Time
Windows []KibanaSlo Time Window Args - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - Timeslice
Metric []KibanaIndicators Slo Timeslice Metric Indicator Args - Defines a timeslice metric indicator for SLO.
- budgeting_
method string - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description string
- A description for the SLO.
- apm_
availability_ list(object)indicators - apm_
latency_ list(object)indicators - artifacts object
- Links to related assets (for example dashboards) returned and managed with the SLO.
- enabled bool
- Whether the SLO is enabled in Kibana.
- group_
bies list(string) - Optional group by fields to use to generate an SLO per distinct value.
- histogram_
custom_ list(object)indicators - kibana_
connections list(object) - Kibana connection configuration block.
- kql_
custom_ list(object)indicators - metric_
custom_ list(object)indicators - name string
- The name of the SLO.
- objectives list(object)
- The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings object
- The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo_
id string - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space_
id string - An identifier for the space. If space_id is not provided, the default space is used.
- list(string)
- The tags for the SLO.
- time_
windows list(object) - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice_
metric_ list(object)indicators - Defines a timeslice metric indicator for SLO.
- budgeting
Method String - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description String
- A description for the SLO.
- apm
Availability List<KibanaIndicators Slo Apm Availability Indicator> - apm
Latency List<KibanaIndicators Slo Apm Latency Indicator> - artifacts
Kibana
Slo Artifacts - Links to related assets (for example dashboards) returned and managed with the SLO.
- enabled Boolean
- Whether the SLO is enabled in Kibana.
- group
Bies List<String> - Optional group by fields to use to generate an SLO per distinct value.
- histogram
Custom List<KibanaIndicators Slo Histogram Custom Indicator> - kibana
Connections List<KibanaSlo Kibana Connection> - Kibana connection configuration block.
- kql
Custom List<KibanaIndicators Slo Kql Custom Indicator> - metric
Custom List<KibanaIndicators Slo Metric Custom Indicator> - name String
- The name of the SLO.
- objectives
List<Kibana
Slo Objective> - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings
Kibana
Slo Settings - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo
Id String - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space
Id String - An identifier for the space. If space_id is not provided, the default space is used.
- List<String>
- The tags for the SLO.
- time
Windows List<KibanaSlo Time Window> - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice
Metric List<KibanaIndicators Slo Timeslice Metric Indicator> - Defines a timeslice metric indicator for SLO.
- budgeting
Method string - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description string
- A description for the SLO.
- apm
Availability KibanaIndicators Slo Apm Availability Indicator[] - apm
Latency KibanaIndicators Slo Apm Latency Indicator[] - artifacts
Kibana
Slo Artifacts - Links to related assets (for example dashboards) returned and managed with the SLO.
- enabled boolean
- Whether the SLO is enabled in Kibana.
- group
Bies string[] - Optional group by fields to use to generate an SLO per distinct value.
- histogram
Custom KibanaIndicators Slo Histogram Custom Indicator[] - kibana
Connections KibanaSlo Kibana Connection[] - Kibana connection configuration block.
- kql
Custom KibanaIndicators Slo Kql Custom Indicator[] - metric
Custom KibanaIndicators Slo Metric Custom Indicator[] - name string
- The name of the SLO.
- objectives
Kibana
Slo Objective[] - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings
Kibana
Slo Settings - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo
Id string - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space
Id string - An identifier for the space. If space_id is not provided, the default space is used.
- string[]
- The tags for the SLO.
- time
Windows KibanaSlo Time Window[] - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice
Metric KibanaIndicators Slo Timeslice Metric Indicator[] - Defines a timeslice metric indicator for SLO.
- budgeting_
method str - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description str
- A description for the SLO.
- apm_
availability_ Sequence[Kibanaindicators Slo Apm Availability Indicator Args] - apm_
latency_ Sequence[Kibanaindicators Slo Apm Latency Indicator Args] - artifacts
Kibana
Slo Artifacts Args - Links to related assets (for example dashboards) returned and managed with the SLO.
- enabled bool
- Whether the SLO is enabled in Kibana.
- group_
bies Sequence[str] - Optional group by fields to use to generate an SLO per distinct value.
- histogram_
custom_ Sequence[Kibanaindicators Slo Histogram Custom Indicator Args] - kibana_
connections Sequence[KibanaSlo Kibana Connection Args] - Kibana connection configuration block.
- kql_
custom_ Sequence[Kibanaindicators Slo Kql Custom Indicator Args] - metric_
custom_ Sequence[Kibanaindicators Slo Metric Custom Indicator Args] - name str
- The name of the SLO.
- objectives
Sequence[Kibana
Slo Objective Args] - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings
Kibana
Slo Settings Args - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo_
id str - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space_
id str - An identifier for the space. If space_id is not provided, the default space is used.
- Sequence[str]
- The tags for the SLO.
- time_
windows Sequence[KibanaSlo Time Window Args] - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice_
metric_ Sequence[Kibanaindicators Slo Timeslice Metric Indicator Args] - Defines a timeslice metric indicator for SLO.
- budgeting
Method String - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description String
- A description for the SLO.
- apm
Availability List<Property Map>Indicators - apm
Latency List<Property Map>Indicators - artifacts Property Map
- Links to related assets (for example dashboards) returned and managed with the SLO.
- enabled Boolean
- Whether the SLO is enabled in Kibana.
- group
Bies List<String> - Optional group by fields to use to generate an SLO per distinct value.
- histogram
Custom List<Property Map>Indicators - kibana
Connections List<Property Map> - Kibana connection configuration block.
- kql
Custom List<Property Map>Indicators - metric
Custom List<Property Map>Indicators - name String
- The name of the SLO.
- objectives List<Property Map>
- The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings Property Map
- The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo
Id String - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space
Id String - An identifier for the space. If space_id is not provided, the default space is used.
- List<String>
- The tags for the SLO.
- time
Windows List<Property Map> - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice
Metric List<Property Map>Indicators - Defines a timeslice metric indicator for SLO.
Outputs
All input properties are implicitly available as output properties. Additionally, the KibanaSlo resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing KibanaSlo Resource
Get an existing KibanaSlo resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: KibanaSloState, opts?: CustomResourceOptions): KibanaSlo@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
apm_availability_indicators: Optional[Sequence[KibanaSloApmAvailabilityIndicatorArgs]] = None,
apm_latency_indicators: Optional[Sequence[KibanaSloApmLatencyIndicatorArgs]] = None,
artifacts: Optional[KibanaSloArtifactsArgs] = None,
budgeting_method: Optional[str] = None,
description: Optional[str] = None,
enabled: Optional[bool] = None,
group_bies: Optional[Sequence[str]] = None,
histogram_custom_indicators: Optional[Sequence[KibanaSloHistogramCustomIndicatorArgs]] = None,
kibana_connections: Optional[Sequence[KibanaSloKibanaConnectionArgs]] = None,
kql_custom_indicators: Optional[Sequence[KibanaSloKqlCustomIndicatorArgs]] = None,
metric_custom_indicators: Optional[Sequence[KibanaSloMetricCustomIndicatorArgs]] = None,
name: Optional[str] = None,
objectives: Optional[Sequence[KibanaSloObjectiveArgs]] = None,
settings: Optional[KibanaSloSettingsArgs] = None,
slo_id: Optional[str] = None,
space_id: Optional[str] = None,
tags: Optional[Sequence[str]] = None,
time_windows: Optional[Sequence[KibanaSloTimeWindowArgs]] = None,
timeslice_metric_indicators: Optional[Sequence[KibanaSloTimesliceMetricIndicatorArgs]] = None) -> KibanaSlofunc GetKibanaSlo(ctx *Context, name string, id IDInput, state *KibanaSloState, opts ...ResourceOption) (*KibanaSlo, error)public static KibanaSlo Get(string name, Input<string> id, KibanaSloState? state, CustomResourceOptions? opts = null)public static KibanaSlo get(String name, Output<String> id, KibanaSloState state, CustomResourceOptions options)resources: _: type: elasticstack:KibanaSlo get: id: ${id}import {
to = elasticstack_kibanaslo.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Apm
Availability List<KibanaIndicators Slo Apm Availability Indicator> - Apm
Latency List<KibanaIndicators Slo Apm Latency Indicator> - Artifacts
Kibana
Slo Artifacts - Links to related assets (for example dashboards) returned and managed with the SLO.
- Budgeting
Method string - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - Description string
- A description for the SLO.
- Enabled bool
- Whether the SLO is enabled in Kibana.
- Group
Bies List<string> - Optional group by fields to use to generate an SLO per distinct value.
- Histogram
Custom List<KibanaIndicators Slo Histogram Custom Indicator> - Kibana
Connections List<KibanaSlo Kibana Connection> - Kibana connection configuration block.
- Kql
Custom List<KibanaIndicators Slo Kql Custom Indicator> - Metric
Custom List<KibanaIndicators Slo Metric Custom Indicator> - Name string
- The name of the SLO.
- Objectives
List<Kibana
Slo Objective> - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- Settings
Kibana
Slo Settings - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- Slo
Id string - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- Space
Id string - An identifier for the space. If space_id is not provided, the default space is used.
- List<string>
- The tags for the SLO.
- Time
Windows List<KibanaSlo Time Window> - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - Timeslice
Metric List<KibanaIndicators Slo Timeslice Metric Indicator> - Defines a timeslice metric indicator for SLO.
- Apm
Availability []KibanaIndicators Slo Apm Availability Indicator Args - Apm
Latency []KibanaIndicators Slo Apm Latency Indicator Args - Artifacts
Kibana
Slo Artifacts Args - Links to related assets (for example dashboards) returned and managed with the SLO.
- Budgeting
Method string - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - Description string
- A description for the SLO.
- Enabled bool
- Whether the SLO is enabled in Kibana.
- Group
Bies []string - Optional group by fields to use to generate an SLO per distinct value.
- Histogram
Custom []KibanaIndicators Slo Histogram Custom Indicator Args - Kibana
Connections []KibanaSlo Kibana Connection Args - Kibana connection configuration block.
- Kql
Custom []KibanaIndicators Slo Kql Custom Indicator Args - Metric
Custom []KibanaIndicators Slo Metric Custom Indicator Args - Name string
- The name of the SLO.
- Objectives
[]Kibana
Slo Objective Args - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- Settings
Kibana
Slo Settings Args - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- Slo
Id string - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- Space
Id string - An identifier for the space. If space_id is not provided, the default space is used.
- []string
- The tags for the SLO.
- Time
Windows []KibanaSlo Time Window Args - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - Timeslice
Metric []KibanaIndicators Slo Timeslice Metric Indicator Args - Defines a timeslice metric indicator for SLO.
- apm_
availability_ list(object)indicators - apm_
latency_ list(object)indicators - artifacts object
- Links to related assets (for example dashboards) returned and managed with the SLO.
- budgeting_
method string - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description string
- A description for the SLO.
- enabled bool
- Whether the SLO is enabled in Kibana.
- group_
bies list(string) - Optional group by fields to use to generate an SLO per distinct value.
- histogram_
custom_ list(object)indicators - kibana_
connections list(object) - Kibana connection configuration block.
- kql_
custom_ list(object)indicators - metric_
custom_ list(object)indicators - name string
- The name of the SLO.
- objectives list(object)
- The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings object
- The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo_
id string - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space_
id string - An identifier for the space. If space_id is not provided, the default space is used.
- list(string)
- The tags for the SLO.
- time_
windows list(object) - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice_
metric_ list(object)indicators - Defines a timeslice metric indicator for SLO.
- apm
Availability List<KibanaIndicators Slo Apm Availability Indicator> - apm
Latency List<KibanaIndicators Slo Apm Latency Indicator> - artifacts
Kibana
Slo Artifacts - Links to related assets (for example dashboards) returned and managed with the SLO.
- budgeting
Method String - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description String
- A description for the SLO.
- enabled Boolean
- Whether the SLO is enabled in Kibana.
- group
Bies List<String> - Optional group by fields to use to generate an SLO per distinct value.
- histogram
Custom List<KibanaIndicators Slo Histogram Custom Indicator> - kibana
Connections List<KibanaSlo Kibana Connection> - Kibana connection configuration block.
- kql
Custom List<KibanaIndicators Slo Kql Custom Indicator> - metric
Custom List<KibanaIndicators Slo Metric Custom Indicator> - name String
- The name of the SLO.
- objectives
List<Kibana
Slo Objective> - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings
Kibana
Slo Settings - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo
Id String - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space
Id String - An identifier for the space. If space_id is not provided, the default space is used.
- List<String>
- The tags for the SLO.
- time
Windows List<KibanaSlo Time Window> - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice
Metric List<KibanaIndicators Slo Timeslice Metric Indicator> - Defines a timeslice metric indicator for SLO.
- apm
Availability KibanaIndicators Slo Apm Availability Indicator[] - apm
Latency KibanaIndicators Slo Apm Latency Indicator[] - artifacts
Kibana
Slo Artifacts - Links to related assets (for example dashboards) returned and managed with the SLO.
- budgeting
Method string - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description string
- A description for the SLO.
- enabled boolean
- Whether the SLO is enabled in Kibana.
- group
Bies string[] - Optional group by fields to use to generate an SLO per distinct value.
- histogram
Custom KibanaIndicators Slo Histogram Custom Indicator[] - kibana
Connections KibanaSlo Kibana Connection[] - Kibana connection configuration block.
- kql
Custom KibanaIndicators Slo Kql Custom Indicator[] - metric
Custom KibanaIndicators Slo Metric Custom Indicator[] - name string
- The name of the SLO.
- objectives
Kibana
Slo Objective[] - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings
Kibana
Slo Settings - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo
Id string - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space
Id string - An identifier for the space. If space_id is not provided, the default space is used.
- string[]
- The tags for the SLO.
- time
Windows KibanaSlo Time Window[] - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice
Metric KibanaIndicators Slo Timeslice Metric Indicator[] - Defines a timeslice metric indicator for SLO.
- apm_
availability_ Sequence[Kibanaindicators Slo Apm Availability Indicator Args] - apm_
latency_ Sequence[Kibanaindicators Slo Apm Latency Indicator Args] - artifacts
Kibana
Slo Artifacts Args - Links to related assets (for example dashboards) returned and managed with the SLO.
- budgeting_
method str - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description str
- A description for the SLO.
- enabled bool
- Whether the SLO is enabled in Kibana.
- group_
bies Sequence[str] - Optional group by fields to use to generate an SLO per distinct value.
- histogram_
custom_ Sequence[Kibanaindicators Slo Histogram Custom Indicator Args] - kibana_
connections Sequence[KibanaSlo Kibana Connection Args] - Kibana connection configuration block.
- kql_
custom_ Sequence[Kibanaindicators Slo Kql Custom Indicator Args] - metric_
custom_ Sequence[Kibanaindicators Slo Metric Custom Indicator Args] - name str
- The name of the SLO.
- objectives
Sequence[Kibana
Slo Objective Args] - The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings
Kibana
Slo Settings Args - The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo_
id str - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space_
id str - An identifier for the space. If space_id is not provided, the default space is used.
- Sequence[str]
- The tags for the SLO.
- time_
windows Sequence[KibanaSlo Time Window Args] - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice_
metric_ Sequence[Kibanaindicators Slo Timeslice Metric Indicator Args] - Defines a timeslice metric indicator for SLO.
- apm
Availability List<Property Map>Indicators - apm
Latency List<Property Map>Indicators - artifacts Property Map
- Links to related assets (for example dashboards) returned and managed with the SLO.
- budgeting
Method String - An
occurrencesbudgeting method uses the number of good and total events during the time window. Atimeslicesbudgeting method uses the number of good slices and total slices during the time window. A slice is an arbitrary time window (smaller than the overall SLO time window) that is either considered good or bad, calculated from the timeslice threshold and the ratio of good over total events that happened during the slice window. A budgeting method is required and must be either occurrences or timeslices. - description String
- A description for the SLO.
- enabled Boolean
- Whether the SLO is enabled in Kibana.
- group
Bies List<String> - Optional group by fields to use to generate an SLO per distinct value.
- histogram
Custom List<Property Map>Indicators - kibana
Connections List<Property Map> - Kibana connection configuration block.
- kql
Custom List<Property Map>Indicators - metric
Custom List<Property Map>Indicators - name String
- The name of the SLO.
- objectives List<Property Map>
- The target objective is the value the SLO needs to meet during the time window. If a timeslices budgeting method is used, we also need to define the timesliceTarget which can be different than the overall SLO target.
- settings Property Map
- The default settings should be sufficient for most users, but if needed, these properties can be overwritten.
- slo
Id String - An ID (8 to 36 characters) that contains only letters, numbers, hyphens, and underscores. If omitted, a UUIDv1 will be generated server-side.
- space
Id String - An identifier for the space. If space_id is not provided, the default space is used.
- List<String>
- The tags for the SLO.
- time
Windows List<Property Map> - Currently supports
calendarAlignedandrollingtime windows. Fortype = "rolling", duration must be one of7d(7 days),30d(30 days), or90d(90 days). Fortype = "calendarAligned", duration must be either1w(weekly) or1M(monthly). Rolling time window SLOs only consider SLI data from the last duration period as a moving window. Calendar aligned time windows align to calendar boundaries. - timeslice
Metric List<Property Map>Indicators - Defines a timeslice metric indicator for SLO.
Supporting Types
KibanaSloApmAvailabilityIndicator, KibanaSloApmAvailabilityIndicatorArgs
- Environment string
- Index string
- Service string
- Transaction
Name string - Transaction
Type string - Filter string
- Environment string
- Index string
- Service string
- Transaction
Name string - Transaction
Type string - Filter string
- environment string
- index string
- service string
- transaction_
name string - transaction_
type string - filter string
- environment String
- index String
- service String
- transaction
Name String - transaction
Type String - filter String
- environment string
- index string
- service string
- transaction
Name string - transaction
Type string - filter string
- environment str
- index str
- service str
- transaction_
name str - transaction_
type str - filter str
- environment String
- index String
- service String
- transaction
Name String - transaction
Type String - filter String
KibanaSloApmLatencyIndicator, KibanaSloApmLatencyIndicatorArgs
- Environment string
- Index string
- Service string
- Threshold double
- Transaction
Name string - Transaction
Type string - Filter string
- Environment string
- Index string
- Service string
- Threshold float64
- Transaction
Name string - Transaction
Type string - Filter string
- environment string
- index string
- service string
- threshold number
- transaction_
name string - transaction_
type string - filter string
- environment String
- index String
- service String
- threshold Double
- transaction
Name String - transaction
Type String - filter String
- environment string
- index string
- service string
- threshold number
- transaction
Name string - transaction
Type string - filter string
- environment str
- index str
- service str
- threshold float
- transaction_
name str - transaction_
type str - filter str
- environment String
- index String
- service String
- threshold Number
- transaction
Name String - transaction
Type String - filter String
KibanaSloArtifacts, KibanaSloArtifactsArgs
- Dashboards
List<Kibana
Slo Artifacts Dashboard> - Dashboard references attached to the SLO.
- Dashboards
[]Kibana
Slo Artifacts Dashboard - Dashboard references attached to the SLO.
- dashboards list(object)
- Dashboard references attached to the SLO.
- dashboards
List<Kibana
Slo Artifacts Dashboard> - Dashboard references attached to the SLO.
- dashboards
Kibana
Slo Artifacts Dashboard[] - Dashboard references attached to the SLO.
- dashboards
Sequence[Kibana
Slo Artifacts Dashboard] - Dashboard references attached to the SLO.
- dashboards List<Property Map>
- Dashboard references attached to the SLO.
KibanaSloArtifactsDashboard, KibanaSloArtifactsDashboardArgs
- Id string
- Dashboard saved object id.
- Id string
- Dashboard saved object id.
- id string
- Dashboard saved object id.
- id String
- Dashboard saved object id.
- id string
- Dashboard saved object id.
- id str
- Dashboard saved object id.
- id String
- Dashboard saved object id.
KibanaSloHistogramCustomIndicator, KibanaSloHistogramCustomIndicatorArgs
- Index string
- Data
View stringId - Optional data view id to use for this indicator.
- Filter string
- Goods
List<Kibana
Slo Histogram Custom Indicator Good> - Timestamp
Field string - Totals
List<Kibana
Slo Histogram Custom Indicator Total>
- Index string
- Data
View stringId - Optional data view id to use for this indicator.
- Filter string
- Goods
[]Kibana
Slo Histogram Custom Indicator Good - Timestamp
Field string - Totals
[]Kibana
Slo Histogram Custom Indicator Total
- index string
- data_
view_ stringid - Optional data view id to use for this indicator.
- filter string
- goods list(object)
- timestamp_
field string - totals list(object)
- index String
- data
View StringId - Optional data view id to use for this indicator.
- filter String
- goods
List<Kibana
Slo Histogram Custom Indicator Good> - timestamp
Field String - totals
List<Kibana
Slo Histogram Custom Indicator Total>
- index string
- data
View stringId - Optional data view id to use for this indicator.
- filter string
- goods
Kibana
Slo Histogram Custom Indicator Good[] - timestamp
Field string - totals
Kibana
Slo Histogram Custom Indicator Total[]
- index str
- data_
view_ strid - Optional data view id to use for this indicator.
- filter str
- goods
Sequence[Kibana
Slo Histogram Custom Indicator Good] - timestamp_
field str - totals
Sequence[Kibana
Slo Histogram Custom Indicator Total]
- index String
- data
View StringId - Optional data view id to use for this indicator.
- filter String
- goods List<Property Map>
- timestamp
Field String - totals List<Property Map>
KibanaSloHistogramCustomIndicatorGood, KibanaSloHistogramCustomIndicatorGoodArgs
- Aggregation string
- Field string
- Filter string
- From double
- To double
- Aggregation string
- Field string
- Filter string
- From float64
- To float64
- aggregation string
- field string
- filter string
- from number
- to number
- aggregation String
- field String
- filter String
- from Double
- to Double
- aggregation string
- field string
- filter string
- from number
- to number
- aggregation str
- field str
- filter str
- from_ float
- to float
- aggregation String
- field String
- filter String
- from Number
- to Number
KibanaSloHistogramCustomIndicatorTotal, KibanaSloHistogramCustomIndicatorTotalArgs
- Aggregation string
- Field string
- Filter string
- From double
- To double
- Aggregation string
- Field string
- Filter string
- From float64
- To float64
- aggregation string
- field string
- filter string
- from number
- to number
- aggregation String
- field String
- filter String
- from Double
- to Double
- aggregation string
- field string
- filter string
- from number
- to number
- aggregation str
- field str
- filter str
- from_ float
- to float
- aggregation String
- field String
- filter String
- from Number
- to Number
KibanaSloKibanaConnection, KibanaSloKibanaConnectionArgs
- Api
Key string - API Key to use for authentication to Kibana
- Bearer
Token string - Bearer Token to use for authentication to Kibana
- Ca
Certs List<string> - A list of paths to CA certificates to validate the certificate presented by the Kibana server.
- Endpoints List<string>
- Insecure bool
- Disable TLS certificate validation
- Password string
- Password to use for API authentication to Kibana.
- Username string
- Username to use for API authentication to Kibana.
- Api
Key string - API Key to use for authentication to Kibana
- Bearer
Token string - Bearer Token to use for authentication to Kibana
- Ca
Certs []string - A list of paths to CA certificates to validate the certificate presented by the Kibana server.
- Endpoints []string
- Insecure bool
- Disable TLS certificate validation
- Password string
- Password to use for API authentication to Kibana.
- Username string
- Username to use for API authentication to Kibana.
- api_
key string - API Key to use for authentication to Kibana
- bearer_
token string - Bearer Token to use for authentication to Kibana
- ca_
certs list(string) - A list of paths to CA certificates to validate the certificate presented by the Kibana server.
- endpoints list(string)
- insecure bool
- Disable TLS certificate validation
- password string
- Password to use for API authentication to Kibana.
- username string
- Username to use for API authentication to Kibana.
- api
Key String - API Key to use for authentication to Kibana
- bearer
Token String - Bearer Token to use for authentication to Kibana
- ca
Certs List<String> - A list of paths to CA certificates to validate the certificate presented by the Kibana server.
- endpoints List<String>
- insecure Boolean
- Disable TLS certificate validation
- password String
- Password to use for API authentication to Kibana.
- username String
- Username to use for API authentication to Kibana.
- api
Key string - API Key to use for authentication to Kibana
- bearer
Token string - Bearer Token to use for authentication to Kibana
- ca
Certs string[] - A list of paths to CA certificates to validate the certificate presented by the Kibana server.
- endpoints string[]
- insecure boolean
- Disable TLS certificate validation
- password string
- Password to use for API authentication to Kibana.
- username string
- Username to use for API authentication to Kibana.
- api_
key str - API Key to use for authentication to Kibana
- bearer_
token str - Bearer Token to use for authentication to Kibana
- ca_
certs Sequence[str] - A list of paths to CA certificates to validate the certificate presented by the Kibana server.
- endpoints Sequence[str]
- insecure bool
- Disable TLS certificate validation
- password str
- Password to use for API authentication to Kibana.
- username str
- Username to use for API authentication to Kibana.
- api
Key String - API Key to use for authentication to Kibana
- bearer
Token String - Bearer Token to use for authentication to Kibana
- ca
Certs List<String> - A list of paths to CA certificates to validate the certificate presented by the Kibana server.
- endpoints List<String>
- insecure Boolean
- Disable TLS certificate validation
- password String
- Password to use for API authentication to Kibana.
- username String
- Username to use for API authentication to Kibana.
KibanaSloKqlCustomIndicator, KibanaSloKqlCustomIndicatorArgs
- Index string
- Data
View stringId - Optional data view id to use for this indicator.
- Filter string
- Filter
Kql KibanaSlo Kql Custom Indicator Filter Kql - Good string
- Good
Kql KibanaSlo Kql Custom Indicator Good Kql - Timestamp
Field string - Total string
- Total
Kql KibanaSlo Kql Custom Indicator Total Kql
- Index string
- Data
View stringId - Optional data view id to use for this indicator.
- Filter string
- Filter
Kql KibanaSlo Kql Custom Indicator Filter Kql - Good string
- Good
Kql KibanaSlo Kql Custom Indicator Good Kql - Timestamp
Field string - Total string
- Total
Kql KibanaSlo Kql Custom Indicator Total Kql
- index string
- data_
view_ stringid - Optional data view id to use for this indicator.
- filter string
- filter_
kql object - good string
- good_
kql object - timestamp_
field string - total string
- total_
kql object
- index String
- data
View StringId - Optional data view id to use for this indicator.
- filter String
- filter
Kql KibanaSlo Kql Custom Indicator Filter Kql - good String
- good
Kql KibanaSlo Kql Custom Indicator Good Kql - timestamp
Field String - total String
- total
Kql KibanaSlo Kql Custom Indicator Total Kql
- index string
- data
View stringId - Optional data view id to use for this indicator.
- filter string
- filter
Kql KibanaSlo Kql Custom Indicator Filter Kql - good string
- good
Kql KibanaSlo Kql Custom Indicator Good Kql - timestamp
Field string - total string
- total
Kql KibanaSlo Kql Custom Indicator Total Kql
- index str
- data_
view_ strid - Optional data view id to use for this indicator.
- filter str
- filter_
kql KibanaSlo Kql Custom Indicator Filter Kql - good str
- good_
kql KibanaSlo Kql Custom Indicator Good Kql - timestamp_
field str - total str
- total_
kql KibanaSlo Kql Custom Indicator Total Kql
- index String
- data
View StringId - Optional data view id to use for this indicator.
- filter String
- filter
Kql Property Map - good String
- good
Kql Property Map - timestamp
Field String - total String
- total
Kql Property Map
KibanaSloKqlCustomIndicatorFilterKql, KibanaSloKqlCustomIndicatorFilterKqlArgs
- Filters
List<Kibana
Slo Kql Custom Indicator Filter Kql Filter> - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- Kql
Query string - KQL query string when using the object form.
- Filters
[]Kibana
Slo Kql Custom Indicator Filter Kql Filter - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- Kql
Query string - KQL query string when using the object form.
- filters list(object)
- Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql_
query string - KQL query string when using the object form.
- filters
List<Kibana
Slo Kql Custom Indicator Filter Kql Filter> - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql
Query String - KQL query string when using the object form.
- filters
Kibana
Slo Kql Custom Indicator Filter Kql Filter[] - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql
Query string - KQL query string when using the object form.
- filters
Sequence[Kibana
Slo Kql Custom Indicator Filter Kql Filter] - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql_
query str - KQL query string when using the object form.
- filters List<Property Map>
- Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql
Query String - KQL query string when using the object form.
KibanaSloKqlCustomIndicatorFilterKqlFilter, KibanaSloKqlCustomIndicatorFilterKqlFilterArgs
- Query string
- Filter query as a JSON object.
- Query string
- Filter query as a JSON object.
- query string
- Filter query as a JSON object.
- query String
- Filter query as a JSON object.
- query string
- Filter query as a JSON object.
- query str
- Filter query as a JSON object.
- query String
- Filter query as a JSON object.
KibanaSloKqlCustomIndicatorGoodKql, KibanaSloKqlCustomIndicatorGoodKqlArgs
- Filters
List<Kibana
Slo Kql Custom Indicator Good Kql Filter> - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- Kql
Query string - KQL query string when using the object form.
- Filters
[]Kibana
Slo Kql Custom Indicator Good Kql Filter - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- Kql
Query string - KQL query string when using the object form.
- filters list(object)
- Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql_
query string - KQL query string when using the object form.
- filters
List<Kibana
Slo Kql Custom Indicator Good Kql Filter> - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql
Query String - KQL query string when using the object form.
- filters
Kibana
Slo Kql Custom Indicator Good Kql Filter[] - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql
Query string - KQL query string when using the object form.
- filters
Sequence[Kibana
Slo Kql Custom Indicator Good Kql Filter] - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql_
query str - KQL query string when using the object form.
- filters List<Property Map>
- Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql
Query String - KQL query string when using the object form.
KibanaSloKqlCustomIndicatorGoodKqlFilter, KibanaSloKqlCustomIndicatorGoodKqlFilterArgs
- Query string
- Filter query as a JSON object.
- Query string
- Filter query as a JSON object.
- query string
- Filter query as a JSON object.
- query String
- Filter query as a JSON object.
- query string
- Filter query as a JSON object.
- query str
- Filter query as a JSON object.
- query String
- Filter query as a JSON object.
KibanaSloKqlCustomIndicatorTotalKql, KibanaSloKqlCustomIndicatorTotalKqlArgs
- Filters
List<Kibana
Slo Kql Custom Indicator Total Kql Filter> - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- Kql
Query string - KQL query string when using the object form.
- Filters
[]Kibana
Slo Kql Custom Indicator Total Kql Filter - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- Kql
Query string - KQL query string when using the object form.
- filters list(object)
- Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql_
query string - KQL query string when using the object form.
- filters
List<Kibana
Slo Kql Custom Indicator Total Kql Filter> - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql
Query String - KQL query string when using the object form.
- filters
Kibana
Slo Kql Custom Indicator Total Kql Filter[] - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql
Query string - KQL query string when using the object form.
- filters
Sequence[Kibana
Slo Kql Custom Indicator Total Kql Filter] - Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql_
query str - KQL query string when using the object form.
- filters List<Property Map>
- Optional Kibana filter objects (query JSON) accompanying the KQL object form.
- kql
Query String - KQL query string when using the object form.
KibanaSloKqlCustomIndicatorTotalKqlFilter, KibanaSloKqlCustomIndicatorTotalKqlFilterArgs
- Query string
- Filter query as a JSON object.
- Query string
- Filter query as a JSON object.
- query string
- Filter query as a JSON object.
- query String
- Filter query as a JSON object.
- query string
- Filter query as a JSON object.
- query str
- Filter query as a JSON object.
- query String
- Filter query as a JSON object.
KibanaSloMetricCustomIndicator, KibanaSloMetricCustomIndicatorArgs
- Index string
- Data
View stringId - Optional data view id to use for this indicator.
- Filter string
- Goods
List<Kibana
Slo Metric Custom Indicator Good> - Timestamp
Field string - Totals
List<Kibana
Slo Metric Custom Indicator Total>
- Index string
- Data
View stringId - Optional data view id to use for this indicator.
- Filter string
- Goods
[]Kibana
Slo Metric Custom Indicator Good - Timestamp
Field string - Totals
[]Kibana
Slo Metric Custom Indicator Total
- index string
- data_
view_ stringid - Optional data view id to use for this indicator.
- filter string
- goods list(object)
- timestamp_
field string - totals list(object)
- index String
- data
View StringId - Optional data view id to use for this indicator.
- filter String
- goods
List<Kibana
Slo Metric Custom Indicator Good> - timestamp
Field String - totals
List<Kibana
Slo Metric Custom Indicator Total>
- index string
- data
View stringId - Optional data view id to use for this indicator.
- filter string
- goods
Kibana
Slo Metric Custom Indicator Good[] - timestamp
Field string - totals
Kibana
Slo Metric Custom Indicator Total[]
- index str
- data_
view_ strid - Optional data view id to use for this indicator.
- filter str
- goods
Sequence[Kibana
Slo Metric Custom Indicator Good] - timestamp_
field str - totals
Sequence[Kibana
Slo Metric Custom Indicator Total]
- index String
- data
View StringId - Optional data view id to use for this indicator.
- filter String
- goods List<Property Map>
- timestamp
Field String - totals List<Property Map>
KibanaSloMetricCustomIndicatorGood, KibanaSloMetricCustomIndicatorGoodArgs
- equation string
- metrics list(object)
KibanaSloMetricCustomIndicatorGoodMetric, KibanaSloMetricCustomIndicatorGoodMetricArgs
- Aggregation string
- Name string
- Field string
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- Filter string
- Aggregation string
- Name string
- Field string
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- Filter string
- aggregation string
- name string
- field string
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter string
- aggregation String
- name String
- field String
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter String
- aggregation string
- name string
- field string
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter string
- aggregation str
- name str
- field str
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter str
- aggregation String
- name String
- field String
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter String
KibanaSloMetricCustomIndicatorTotal, KibanaSloMetricCustomIndicatorTotalArgs
- equation string
- metrics list(object)
KibanaSloMetricCustomIndicatorTotalMetric, KibanaSloMetricCustomIndicatorTotalMetricArgs
- Aggregation string
- Name string
- Field string
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- Filter string
- Aggregation string
- Name string
- Field string
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- Filter string
- aggregation string
- name string
- field string
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter string
- aggregation String
- name String
- field String
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter String
- aggregation string
- name string
- field string
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter string
- aggregation str
- name str
- field str
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter str
- aggregation String
- name String
- field String
- Field to aggregate. Required for all aggregations except doccount. Must NOT be set for doccount.
- filter String
KibanaSloObjective, KibanaSloObjectiveArgs
- Target double
- Timeslice
Target double - Timeslice
Window string
- Target float64
- Timeslice
Target float64 - Timeslice
Window string
- target number
- timeslice_
target number - timeslice_
window string
- target Double
- timeslice
Target Double - timeslice
Window String
- target number
- timeslice
Target number - timeslice
Window string
- target float
- timeslice_
target float - timeslice_
window str
- target Number
- timeslice
Target Number - timeslice
Window String
KibanaSloSettings, KibanaSloSettingsArgs
- Frequency string
- Prevent
Initial boolBackfill - Prevents the underlying ES transform from attempting to backfill data on start, which can sometimes be resource-intensive or time-consuming and unnecessary
- Sync
Delay string - Sync
Field string - The date field used to identify new documents in the source. When unspecified, the indicator timestamp field is used.
- Frequency string
- Prevent
Initial boolBackfill - Prevents the underlying ES transform from attempting to backfill data on start, which can sometimes be resource-intensive or time-consuming and unnecessary
- Sync
Delay string - Sync
Field string - The date field used to identify new documents in the source. When unspecified, the indicator timestamp field is used.
- frequency string
- prevent_
initial_ boolbackfill - Prevents the underlying ES transform from attempting to backfill data on start, which can sometimes be resource-intensive or time-consuming and unnecessary
- sync_
delay string - sync_
field string - The date field used to identify new documents in the source. When unspecified, the indicator timestamp field is used.
- frequency String
- prevent
Initial BooleanBackfill - Prevents the underlying ES transform from attempting to backfill data on start, which can sometimes be resource-intensive or time-consuming and unnecessary
- sync
Delay String - sync
Field String - The date field used to identify new documents in the source. When unspecified, the indicator timestamp field is used.
- frequency string
- prevent
Initial booleanBackfill - Prevents the underlying ES transform from attempting to backfill data on start, which can sometimes be resource-intensive or time-consuming and unnecessary
- sync
Delay string - sync
Field string - The date field used to identify new documents in the source. When unspecified, the indicator timestamp field is used.
- frequency str
- prevent_
initial_ boolbackfill - Prevents the underlying ES transform from attempting to backfill data on start, which can sometimes be resource-intensive or time-consuming and unnecessary
- sync_
delay str - sync_
field str - The date field used to identify new documents in the source. When unspecified, the indicator timestamp field is used.
- frequency String
- prevent
Initial BooleanBackfill - Prevents the underlying ES transform from attempting to backfill data on start, which can sometimes be resource-intensive or time-consuming and unnecessary
- sync
Delay String - sync
Field String - The date field used to identify new documents in the source. When unspecified, the indicator timestamp field is used.
KibanaSloTimeWindow, KibanaSloTimeWindowArgs
KibanaSloTimesliceMetricIndicator, KibanaSloTimesliceMetricIndicatorArgs
- Index string
- Timestamp
Field string - Data
View stringId - Optional data view id to use for this indicator.
- Filter string
- Metrics
List<Kibana
Slo Timeslice Metric Indicator Metric>
- Index string
- Timestamp
Field string - Data
View stringId - Optional data view id to use for this indicator.
- Filter string
- Metrics
[]Kibana
Slo Timeslice Metric Indicator Metric
- index string
- timestamp_
field string - data_
view_ stringid - Optional data view id to use for this indicator.
- filter string
- metrics list(object)
- index String
- timestamp
Field String - data
View StringId - Optional data view id to use for this indicator.
- filter String
- metrics
List<Kibana
Slo Timeslice Metric Indicator Metric>
- index string
- timestamp
Field string - data
View stringId - Optional data view id to use for this indicator.
- filter string
- metrics
Kibana
Slo Timeslice Metric Indicator Metric[]
- index str
- timestamp_
field str - data_
view_ strid - Optional data view id to use for this indicator.
- filter str
- metrics
Sequence[Kibana
Slo Timeslice Metric Indicator Metric]
- index String
- timestamp
Field String - data
View StringId - Optional data view id to use for this indicator.
- filter String
- metrics List<Property Map>
KibanaSloTimesliceMetricIndicatorMetric, KibanaSloTimesliceMetricIndicatorMetricArgs
- Comparator string
- Equation string
- Threshold double
- Metrics
List<Kibana
Slo Timeslice Metric Indicator Metric Metric>
- Comparator string
- Equation string
- Threshold float64
- Metrics
[]Kibana
Slo Timeslice Metric Indicator Metric Metric
- comparator string
- equation string
- threshold number
- metrics list(object)
- comparator String
- equation String
- threshold Double
- metrics
List<Kibana
Slo Timeslice Metric Indicator Metric Metric>
- comparator string
- equation string
- threshold number
- metrics
Kibana
Slo Timeslice Metric Indicator Metric Metric[]
- comparator String
- equation String
- threshold Number
- metrics List<Property Map>
KibanaSloTimesliceMetricIndicatorMetricMetric, KibanaSloTimesliceMetricIndicatorMetricMetricArgs
- Aggregation string
- The aggregation type for this metric (kbapi timeslice metric union: no valuecount). One of: sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile, doccount. Determines which other fields are required.
- Name string
- The unique name for this metric. Used as a variable in the equation field. Must be a single letter A–Z.
- Field string
- Field to aggregate. Required for sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile. Must NOT be set for doc_count.
- Filter string
- Optional KQL filter for this metric. Supported for all timeslice metric aggregation kinds, including doc_count, per the Kibana SLO API.
- Percentile double
- Percentile value (e.g., 99). Required if aggregation is 'percentile'. Must NOT be set for other aggregations.
- Aggregation string
- The aggregation type for this metric (kbapi timeslice metric union: no valuecount). One of: sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile, doccount. Determines which other fields are required.
- Name string
- The unique name for this metric. Used as a variable in the equation field. Must be a single letter A–Z.
- Field string
- Field to aggregate. Required for sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile. Must NOT be set for doc_count.
- Filter string
- Optional KQL filter for this metric. Supported for all timeslice metric aggregation kinds, including doc_count, per the Kibana SLO API.
- Percentile float64
- Percentile value (e.g., 99). Required if aggregation is 'percentile'. Must NOT be set for other aggregations.
- aggregation string
- The aggregation type for this metric (kbapi timeslice metric union: no valuecount). One of: sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile, doccount. Determines which other fields are required.
- name string
- The unique name for this metric. Used as a variable in the equation field. Must be a single letter A–Z.
- field string
- Field to aggregate. Required for sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile. Must NOT be set for doc_count.
- filter string
- Optional KQL filter for this metric. Supported for all timeslice metric aggregation kinds, including doc_count, per the Kibana SLO API.
- percentile number
- Percentile value (e.g., 99). Required if aggregation is 'percentile'. Must NOT be set for other aggregations.
- aggregation String
- The aggregation type for this metric (kbapi timeslice metric union: no valuecount). One of: sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile, doccount. Determines which other fields are required.
- name String
- The unique name for this metric. Used as a variable in the equation field. Must be a single letter A–Z.
- field String
- Field to aggregate. Required for sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile. Must NOT be set for doc_count.
- filter String
- Optional KQL filter for this metric. Supported for all timeslice metric aggregation kinds, including doc_count, per the Kibana SLO API.
- percentile Double
- Percentile value (e.g., 99). Required if aggregation is 'percentile'. Must NOT be set for other aggregations.
- aggregation string
- The aggregation type for this metric (kbapi timeslice metric union: no valuecount). One of: sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile, doccount. Determines which other fields are required.
- name string
- The unique name for this metric. Used as a variable in the equation field. Must be a single letter A–Z.
- field string
- Field to aggregate. Required for sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile. Must NOT be set for doc_count.
- filter string
- Optional KQL filter for this metric. Supported for all timeslice metric aggregation kinds, including doc_count, per the Kibana SLO API.
- percentile number
- Percentile value (e.g., 99). Required if aggregation is 'percentile'. Must NOT be set for other aggregations.
- aggregation str
- The aggregation type for this metric (kbapi timeslice metric union: no valuecount). One of: sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile, doccount. Determines which other fields are required.
- name str
- The unique name for this metric. Used as a variable in the equation field. Must be a single letter A–Z.
- field str
- Field to aggregate. Required for sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile. Must NOT be set for doc_count.
- filter str
- Optional KQL filter for this metric. Supported for all timeslice metric aggregation kinds, including doc_count, per the Kibana SLO API.
- percentile float
- Percentile value (e.g., 99). Required if aggregation is 'percentile'. Must NOT be set for other aggregations.
- aggregation String
- The aggregation type for this metric (kbapi timeslice metric union: no valuecount). One of: sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile, doccount. Determines which other fields are required.
- name String
- The unique name for this metric. Used as a variable in the equation field. Must be a single letter A–Z.
- field String
- Field to aggregate. Required for sum, avg, min, max, lastvalue, cardinality, stddeviation, percentile. Must NOT be set for doc_count.
- filter String
- Optional KQL filter for this metric. Supported for all timeslice metric aggregation kinds, including doc_count, per the Kibana SLO API.
- percentile Number
- Percentile value (e.g., 99). Required if aggregation is 'percentile'. Must NOT be set for other aggregations.
Import
The pulumi import command can be used, for example:
$ pulumi import elasticstack:index/kibanaSlo:KibanaSlo my_slo <space id>/<slo id>
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- elasticstack elastic/terraform-provider-elasticstack
- License
- Notes
- This Pulumi package is based on the
elasticstackTerraform Provider.
published on Thursday, May 14, 2026 by elastic
