Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: nobl9/nobl9-go
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.84.0-rc4
Choose a base ref
...
head repository: nobl9/nobl9-go
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.84.0-rc5
Choose a head ref
  • 10 commits
  • 24 files changed
  • 6 contributors

Commits on Aug 7, 2024

  1. chore: Adjust release doc (#513)

    BSski authored Aug 7, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    1f71b3f View commit details

Commits on Aug 8, 2024

  1. chore: Update dependency cspell to v8.13.2 (#515)

    [![Mend
    Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)
    
    This PR contains the following updates:
    
    | Package | Change | Age | Adoption | Passing | Confidence |
    |---|---|---|---|---|---|
    | [cspell](https://streetsidesoftware.github.io/cspell/)
    ([source](https://togithub.com/streetsidesoftware/cspell/tree/HEAD/packages/cspell))
    | [`8.13.1` ->
    `8.13.2`](https://renovatebot.com/diffs/npm/cspell/8.13.1/8.13.2) |
    [![age](https://developer.mend.io/api/mc/badges/age/npm/cspell/8.13.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/cspell/8.13.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/cspell/8.13.1/8.13.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/cspell/8.13.1/8.13.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>streetsidesoftware/cspell (cspell)</summary>
    
    ###
    [`v8.13.2`](https://togithub.com/streetsidesoftware/cspell/blob/HEAD/packages/cspell/CHANGELOG.md#small8132-2024-08-08-small)
    
    [Compare
    Source](https://togithub.com/streetsidesoftware/cspell/compare/v8.13.1...v8.13.2)
    
    - chore: Update Integration Test Performance Data
    ([#&#8203;6060](https://togithub.com/streetsidesoftware/cspell/issues/6060))
    ([c766d18](https://togithub.com/streetsidesoftware/cspell/commit/c766d18)),
    closes
    [#&#8203;6060](https://togithub.com/streetsidesoftware/cspell/issues/6060)
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "after 10pm every weekday,before 5am
    every weekday,every weekend" (UTC), Automerge - At any time (no schedule
    defined).
    
    🚦 **Automerge**: Enabled.
    
    ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
    rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend
    Renovate](https://www.mend.io/free-developer-tools/renovate/). View the
    [repository job log](https://developer.mend.io/github/nobl9/nobl9-go).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yMC4xIiwidXBkYXRlZEluVmVyIjoiMzguMjAuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwiamF2YXNjcmlwdCIsInJlbm92YXRlIl19-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Aug 8, 2024
    Copy the full SHA
    dd4d013 View commit details

Commits on Aug 12, 2024

  1. chore: Update dependency cspell to v8.13.3 (#517)

    [![Mend
    Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)
    
    This PR contains the following updates:
    
    | Package | Change | Age | Adoption | Passing | Confidence |
    |---|---|---|---|---|---|
    | [cspell](https://streetsidesoftware.github.io/cspell/)
    ([source](https://togithub.com/streetsidesoftware/cspell/tree/HEAD/packages/cspell))
    | [`8.13.2` ->
    `8.13.3`](https://renovatebot.com/diffs/npm/cspell/8.13.2/8.13.3) |
    [![age](https://developer.mend.io/api/mc/badges/age/npm/cspell/8.13.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/cspell/8.13.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/cspell/8.13.2/8.13.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/cspell/8.13.2/8.13.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>streetsidesoftware/cspell (cspell)</summary>
    
    ###
    [`v8.13.3`](https://togithub.com/streetsidesoftware/cspell/blob/HEAD/packages/cspell/CHANGELOG.md#small8133-2024-08-12-small)
    
    [Compare
    Source](https://togithub.com/streetsidesoftware/cspell/compare/v8.13.2...v8.13.3)
    
    - chore: Update Integration Test Performance Data
    ([#&#8203;6079](https://togithub.com/streetsidesoftware/cspell/issues/6079))
    ([dd28ef5](https://togithub.com/streetsidesoftware/cspell/commit/dd28ef5)),
    closes
    [#&#8203;6079](https://togithub.com/streetsidesoftware/cspell/issues/6079)
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "after 10pm every weekday,before 5am
    every weekday,every weekend" (UTC), Automerge - At any time (no schedule
    defined).
    
    🚦 **Automerge**: Enabled.
    
    ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
    rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend
    Renovate](https://www.mend.io/free-developer-tools/renovate/). View the
    [repository job log](https://developer.mend.io/github/nobl9/nobl9-go).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yMC4xIiwidXBkYXRlZEluVmVyIjoiMzguMjAuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwiamF2YXNjcmlwdCIsInJlbm92YXRlIl19-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Aug 12, 2024
    Copy the full SHA
    c7f18b6 View commit details

Commits on Aug 13, 2024

  1. chore: PC-13881 Fix comment about composites 2.0 being unavailable (#518

    )
    BSski authored Aug 13, 2024
    Copy the full SHA
    37596ab View commit details
  2. chore: PC-13744 Composite SLOs in examples and SDK e2e tests (#516)

    ## Motivation
    
    Recently added SDK e2e tests were developed when Composite SLOs were not
    released yet. We need to close that test coverage gap.
    
    ## Summary
    
    The code that generates examples of SLOs now includes all variants for
    Composite SLOs. Few cases required special handling:
    * Composite SLOs don't have `indicator` section and don't have an
    association with data sources
    * Composite SLOs depend on other SLOs. Normal SLOs depend only on
    objects of other kinds.
    
    YAML examples were regenerated from updated code.
    
    `Makefile` contains small improvement that when running e2e tests
    locally `NOBL9_SDK_TEST_RUN_SEQUENTIAL_APPLY_AND_DELETE` env var is set
    to `true`, because usually, tests run locally are run against smaller
    and slower dev environments.
    
    Fixed `check/generate` target in `Makefile` that was not checking
    generated yaml examples.
    
    ## Testing
    
    Locally:
    ```
    make test/e2e
    ```
    
    Run "End-to-end tests dispatch" workflow with and without sequential
    requests option:
    
    
    https://github.com/nobl9/nobl9-go/actions/runs/10355310664/job/28662650970
    
    https://github.com/nobl9/nobl9-go/actions/runs/10355329422/job/28662712884
    ditrytus authored Aug 13, 2024
    Copy the full SHA
    c2e5c03 View commit details
  3. fix: PC-13744 Removed anomaly config from composite e2e test (#520)

    ## Summary
    
    Removed anomaly config from composite tests
    ditrytus authored Aug 13, 2024
    Copy the full SHA
    abca389 View commit details

Commits on Aug 14, 2024

  1. chore: Update dependency golangci/golangci-lint to v1.60.1 (#521)

    [![Mend
    Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)
    
    This PR contains the following updates:
    
    | Package | Update | Change |
    |---|---|---|
    | [golangci/golangci-lint](https://togithub.com/golangci/golangci-lint)
    | minor | `v1.59.1` -> `v1.60.1` |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>golangci/golangci-lint (golangci/golangci-lint)</summary>
    
    ###
    [`v1.60.1`](https://togithub.com/golangci/golangci-lint/compare/v1.60.0...v1.60.1)
    
    [Compare
    Source](https://togithub.com/golangci/golangci-lint/compare/v1.59.1...v1.60.1)
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "after 10pm every weekday,before 5am
    every weekday,every weekend" (UTC), Automerge - At any time (no schedule
    defined).
    
    🚦 **Automerge**: Enabled.
    
    ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
    rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend
    Renovate](https://www.mend.io/free-developer-tools/renovate/). View the
    [repository job log](https://developer.mend.io/github/nobl9/nobl9-go).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yNi4xIiwidXBkYXRlZEluVmVyIjoiMzguMjYuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwicmVub3ZhdGUiXX0=-->
    
    ---------
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    Co-authored-by: Mateusz Hawrus <mateusz.hawrus@nobl9.com>
    renovate[bot] and nieomylnieja authored Aug 14, 2024
    Copy the full SHA
    dc8fab2 View commit details

Commits on Aug 17, 2024

  1. chore: Update dependency cspell to v8.14.1 (#522)

    [![Mend
    Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)
    
    This PR contains the following updates:
    
    | Package | Change | Age | Adoption | Passing | Confidence |
    |---|---|---|---|---|---|
    | [cspell](https://streetsidesoftware.github.io/cspell/)
    ([source](https://togithub.com/streetsidesoftware/cspell/tree/HEAD/packages/cspell))
    | [`8.13.3` ->
    `8.14.1`](https://renovatebot.com/diffs/npm/cspell/8.13.3/8.14.1) |
    [![age](https://developer.mend.io/api/mc/badges/age/npm/cspell/8.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/cspell/8.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/cspell/8.13.3/8.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/cspell/8.13.3/8.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
    |
    
    ---
    
    ### Release Notes
    
    <details>
    <summary>streetsidesoftware/cspell (cspell)</summary>
    
    ###
    [`v8.14.1`](https://togithub.com/streetsidesoftware/cspell/blob/HEAD/packages/cspell/CHANGELOG.md#small8141-2024-08-17-small)
    
    [Compare
    Source](https://togithub.com/streetsidesoftware/cspell/compare/v8.13.3...v8.14.1)
    
    - fix: Fix publishing
    ([8a56148](https://togithub.com/streetsidesoftware/cspell/commit/8a56148))
    
    </details>
    
    ---
    
    ### Configuration
    
    📅 **Schedule**: Branch creation - "after 10pm every weekday,before 5am
    every weekday,every weekend" (UTC), Automerge - At any time (no schedule
    defined).
    
    🚦 **Automerge**: Enabled.
    
    ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
    rebase/retry checkbox.
    
    🔕 **Ignore**: Close this PR and you won't be reminded about this update
    again.
    
    ---
    
    - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
    this box
    
    ---
    
    This PR was generated by [Mend
    Renovate](https://www.mend.io/free-developer-tools/renovate/). View the
    [repository job log](https://developer.mend.io/github/nobl9/nobl9-go).
    
    <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC4yNi4xIiwidXBkYXRlZEluVmVyIjoiMzguMjYuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIiwiamF2YXNjcmlwdCIsInJlbm92YXRlIl19-->
    
    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Aug 17, 2024
    Copy the full SHA
    a2a4e66 View commit details

Commits on Aug 19, 2024

  1. chore: Update DEVELOPMENT.md (#523)

    Add section about e2e tests.
    nieomylnieja authored Aug 19, 2024
    Copy the full SHA
    7579676 View commit details
  2. feat: add Replay support to Logic Monitor (#510)

    ## Motivation
    Adds Replay support to Logic Monitor data source.
    
    
    ## Summary
    
    Adds Logic Monitor to Agent and Direct max duration retrieval
    definitions.
    
    ## Release Notes
    
    Adds Replay support to Logic Monitor data source.
    mkaras-nobl9 authored Aug 19, 2024
    Copy the full SHA
    6024cba View commit details
5 changes: 4 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@ GO_ENUM_VERSION := v0.6.0
# renovate datasource=github-releases depName=securego/gosec
GOSEC_VERSION := v2.20.0
# renovate datasource=github-releases depName=golangci/golangci-lint
GOLANGCI_LINT_VERSION := v1.59.1
GOLANGCI_LINT_VERSION := v1.60.1
# renovate datasource=go depName=golang.org/x/vuln/cmd/govulncheck
GOVULNCHECK_VERSION := v1.1.3
# renovate datasource=go depName=golang.org/x/tools/cmd/goimports
@@ -44,6 +44,9 @@ test:
## Run all end-to-end tests (requires Nobl9 platform credentials).
test/e2e:
# The '-count=1' flag disables tests results caching, as per https://go.dev/doc/go1.10#test.
@if [ "$(GITHUB_ACTIONS)" != "true" ]; then \
export NOBL9_SDK_TEST_RUN_SEQUENTIAL_APPLY_AND_DELETE=true; \
fi; \
go test -count=1 -race -test.v -timeout=5m -tags=e2e_test ./tests

## Record tests and save them in ./bin/recorded-tests.json.
17 changes: 15 additions & 2 deletions docs/DEVELOPMENT.md
Original file line number Diff line number Diff line change
@@ -29,8 +29,7 @@ and makes local debugging easier.

## Testing

Currently nobl9-go is automatically verified with unit tests only.
It is encouraged to create a simple MVP program which verifies the introduced
It is encouraged to create a simple MVP program which verifies that introduced
changes work. There's a dedicated section in PR template `## Testing` which
is a great place to add such `main.go` code snippet.
Here's an example:
@@ -87,6 +86,20 @@ rules:
If you wish to record the tests run `make test/record`.
By default, the tests are recorded inside `./bin` folder.

### End-to-end test

Tests which are run against Nobl9 API are located under [tests](../tests/)
folder.
They are standard Go tests, annotated with build tag `e2e_test`, they can
be executed with `make test/e2e`.
In order to run them, a set of basic Nobl9 credentials is required:

- *NOBL9_SDK_CLIENT_ID*
- *NOBL9_SDK_CLIENT_SECRET*

There's also a [dispatch action](https://github.com/nobl9/nobl9-go/actions/workflows/e2e-tests-dispatch.yml)
available.

## Releases

Refer to [RELEASE.md](./RELEASE.md) for more information on release process.
2 changes: 1 addition & 1 deletion docs/RELEASE.md
Original file line number Diff line number Diff line change
@@ -16,7 +16,7 @@ created. For example, If you end up changing PR title from `sec:` to `fix:`
you'll have to manually remove `security` label.

On each commit to `main` branch, Release Drafter will update the next release
draft. Once you're ready to create new version, simply publish this draft.
draft.

In addition to Release Drafter, we're also running a script which extracts
explicitly listed release notes and breaking changes which are optionally
3 changes: 2 additions & 1 deletion internal/manifest/objects_test.go
Original file line number Diff line number Diff line change
@@ -2,6 +2,7 @@ package manifest

import (
"context"
"os"
"path/filepath"
"testing"

@@ -17,7 +18,7 @@ import (

func TestMain(m *testing.M) {
v1alphaParser.UseStrictDecodingMode = true
m.Run()
os.Exit(m.Run())
}

func TestObjectExamples(t *testing.T) {
45 changes: 32 additions & 13 deletions internal/manifest/v1alpha/examples/slo.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package v1alphaExamples

import (
"fmt"

"github.com/nobl9/nobl9-go/manifest/v1alpha"
v1alphaSLO "github.com/nobl9/nobl9-go/manifest/v1alpha/slo"
"github.com/nobl9/nobl9-go/manifest/v1alpha/twindow"
@@ -129,8 +131,14 @@ var badOverTotalVariants = []string{
metricVariantBadRatio,
}

type sloExampleInterface interface {
Example
fmt.Stringer
SLO() v1alphaSLO.SLO
}

func SLO() []Example {
baseExamples := make([]sloExample, 0)
baseExamples := make([]sloExampleInterface, 0)
for _, dataSourceType := range standardGoodOverTotalMetrics {
baseExamples = append(baseExamples, createVariants(dataSourceType, goodOverTotalVariants, nil)...)
}
@@ -146,8 +154,9 @@ func SLO() []Example {
)...)
}
}
variants := make([]sloExample, 0, len(baseExamples)*4)
for _, example := range baseExamples {
baseExamples = append(baseExamples, sloCompositeExample{})
variants := make([]sloExampleInterface, 0, len(baseExamples)*4)
for _, baseExample := range baseExamples {
for _, timeWindow := range []twindow.TimeWindowTypeEnum{
twindow.Rolling,
twindow.Calendar,
@@ -156,15 +165,25 @@ func SLO() []Example {
v1alphaSLO.BudgetingMethodTimeslices,
v1alphaSLO.BudgetingMethodOccurrences,
} {
example = sloExample{
DataSourceType: example.DataSourceType,
BudgetingMethod: method,
TimeWindowType: timeWindow,
MetricVariant: example.MetricVariant,
MetricSubVariant: example.MetricSubVariant,
switch example := baseExample.(type) {
case sloExample:
variants = append(variants, sloExample{
sloBaseExample: sloBaseExample{
BudgetingMethod: method,
TimeWindowType: timeWindow,
},
DataSourceType: example.DataSourceType,
MetricVariant: example.MetricVariant,
MetricSubVariant: example.MetricSubVariant,
})
case sloCompositeExample:
variants = append(variants, sloCompositeExample{
sloBaseExample: sloBaseExample{
BudgetingMethod: method,
TimeWindowType: timeWindow,
},
})
}
example.SLO = example.Generate()
variants = append(variants, example)
}
}
}
@@ -175,8 +194,8 @@ func createVariants(
dataSourceType v1alpha.DataSourceType,
metricVariants []metricVariant,
metricSubVariants []metricSubVariant,
) []sloExample {
examples := make([]sloExample, 0, len(metricVariants)*(1+len(metricSubVariants)))
) []sloExampleInterface {
examples := make([]sloExampleInterface, 0, len(metricVariants)*(1+len(metricSubVariants)))
for _, example := range metricVariants {
if len(metricSubVariants) == 0 {
examples = append(examples, sloExample{
115 changes: 115 additions & 0 deletions internal/manifest/v1alpha/examples/slo_composite.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
package v1alphaExamples

import (
"fmt"
"time"

"github.com/nobl9/nobl9-go/manifest/v1alpha"

v1alphaSLO "github.com/nobl9/nobl9-go/manifest/v1alpha/slo"
"github.com/nobl9/nobl9-go/sdk"
)

type sloCompositeExample struct {
sloBaseExample
}

func (s sloCompositeExample) GetObject() any {
return s.SLO()
}

func (s sloCompositeExample) GetVariant() string {
return "composite-slo"
}

func (s sloCompositeExample) GetSubVariant() string {
return s.String()
}

func (s sloCompositeExample) GetYAMLComments() []string {
return []string{
fmt.Sprintf("Composite SLO"),
fmt.Sprintf("Budgeting method: %s", s.BudgetingMethod),
fmt.Sprintf("Time window type: %s", s.TimeWindowType),
}
}

func (s sloCompositeExample) String() string {
return fmt.Sprintf(
"Composite SLO using %s budgeting method and %s time window",
s.BudgetingMethod,
s.TimeWindowType,
)
}

func (s sloCompositeExample) SLO() v1alphaSLO.SLO {
return v1alphaSLO.New(
v1alphaSLO.Metadata{
Name: "user-experience-slo",
DisplayName: "User experience SLO",
Project: sdk.DefaultProject,
Labels: v1alpha.Labels{
"team": {"green", "ux"},
"env": {"prod", "dev"},
"region": {"us", "eu"},
"area": {"user-experience"},
},
Annotations: v1alpha.MetadataAnnotations{
"team": "ux",
"env": "prod",
"region": "us",
"area": "user-experience",
},
},
v1alphaSLO.Spec{
Description: "Example composite SLO",
Service: "web-app",
Indicator: nil,
BudgetingMethod: s.BudgetingMethod.String(),
Attachments: exampleAttachments(),
AlertPolicies: exampleAlertPolicies(),
AnomalyConfig: nil,
TimeWindows: exampleTimeWindows(s.TimeWindowType),
Objectives: []v1alphaSLO.Objective{
{
ObjectiveBase: v1alphaSLO.ObjectiveBase{
DisplayName: "User experience",
Value: ptr(0.0),
Name: "user-experience",
},
BudgetTarget: ptr(0.95),
Primary: ptr(true),
TimeSliceTarget: exampleTimeSliceTarget(s.BudgetingMethod),
Composite: &v1alphaSLO.CompositeSpec{
MaxDelay: (45 * time.Minute).String(),
Components: v1alphaSLO.Components{
Objectives: []v1alphaSLO.CompositeObjective{
{
Project: "e-commerce",
SLO: "store-web-latency",
Objective: "latency",
Weight: 1,
WhenDelayed: v1alphaSLO.WhenDelayedCountAsGood,
},
{
Project: "e-commerce",
SLO: "store-web-availability",
Objective: "availability",
Weight: 4,
WhenDelayed: v1alphaSLO.WhenDelayedCountAsBad,
},
{
Project: "external-services",
SLO: "payment-integration-availability",
Objective: "availability",
Weight: 3,
WhenDelayed: v1alphaSLO.WhenDelayedIgnore,
},
},
},
},
},
},
},
)
}
Loading