sloctl
User Guide
sloctl
is a command-line interface (CLI) for Nobl9. You can use the sloctl
CLI for creating or updating multiple SLOs and Objectives at once as part of CI/CD.
The web user interface is available to give you an easy way to create and update SLOs and other resources, while sloctl
aims to provide a systematic and/or automated approach to maintaining SLOs as code.
For other ways of leverging SLOs as code, check SLOs as code section.
Why Use sloctl
?
- You can use
sloctl
to integrate Nobl9 in CI/CD pipelines. Withsloctl
, you can keep definitions of SLOs or other Nobl9 resources in the version control system. Any changes will be automatically applied to Nobl9. - Currently,
sloctl
is the only method to browse fired alerts (apart from alert methods themselves). There is no UI to browse fired alerts in the Nobl9 UI. - Several advanced configuration options are only available via yamls and
sloctl
(Keep in mind that the below list is not comprehensive):- For Agents in your organization, you can retrieve
client_id
andclient_secret
using thesloctl get agents
command. - For Alert Policies, you can use any number and combination of alerting conditions. Nobl9 Web UI limits that to a max. of one condition of a given type.
- For Agents in your organization, you can retrieve
Setting up sloctl
Use the following steps to install and configure Nobl9 command-line interface, sloctl.
Binary Installation of sloctl
When installing files in protected folders, the operating system occasionally requires copy or file permissions. When this happens, give the installed files executable permissions (Linux and Mac) or confirm the file copy operation (Windows).
Use the following steps to download the Nobl9 CLI. The following are platform-specific instructions:
- MacOS
- Windows
- Linux
homebrew
- For Mac OS, we recommend using
homebrew
:
brew tap nobl9/sloctl
brew install sloctl
- Download the appropriate binary executable file from sloctl release pages.
- After the the executable zip file downloads, you will need to place the file in the appropriate system path and rename it to
sloctl
. - The Mac operating system occasionally requires file permissions. When this happens, give the file executable permission.
- Move the binary file to your Downloads folder.
- Open Terminal and enter the following commands:
- The last
open
command above will navigate to thebin
folder in Finder. - Right-click
sloctl
in the Finder window and select Open. Open is not the default option when the security modal pops up. Selecting Open authorizes the
sudo mkdir -p /usr/local/bin
sudo cp ~/Downloads/sloctl /usr/local/bin/
sudo chmod a+rx /usr/local/bin/sloctl
open /usr/local/bin
sloctl
binary on your Mac.- Download the appropriate executable binary file from the sloctl releases page
- Depending on your system role:
- If you're Admin: Create the directory
C:\Program Files\nobl9
. - If you're User: Create a
nobl9
folder in your user directory. - Rename the file to
sloctl.exe
. - Copy the
sloctl.exe
file from the folder you downloaded it to thenobl9
folder created in the first step.
.exe
Directory to the System Path Variable.Follow the steps below to finish your installation:
- Navigate to Control Panel > System and Security > System and click Advanced system settings.
- Click the Advanced tab in the System Properties page, and click Environment Variables.
- Navigate to User variables for username section, and select Path
- Navigate to System Variables and select Path (If you only have access to the user variables, then make the update there.)
- Click Edit.
- Add the directory where you placed the file.
- Click OK.
- Download the appropriate binary executable file from sloctl release pages.
- Move the binary file to where the $PATH is pointing at, for example:
/usr/local/bin
. - Rename the binary file to
sloctl
- The Linux operating system occasionally requires file permissions. When this happens, give the file executable permission.
- Finally, type
sloctl
to run the program.
Configuration
Follow these steps to configure your sloctl
connection:
Create a Client ID and Client Secret pair for use in
sloctl
:Navigate to Settings > Access Keys in the web UI.
Click Create Access Key.
tipYou can retrieve Agents'
client_id
andclient_secret
through thesloctl get agents -k
command. See below for details.noteYou can retrieve your Organization ID in the Nobl9 UI, in the Settings > Account:
Follow the instructions in the UI to configure
sloctl
to use the provided credentials. Use one of the available setup flows:Method 1:
Click Download credentials file in the web UI, and put the downloaded file in~/.config/nobl9/config.toml
(Linux and macOS) or%UserProfile%\.config\nobl9\config.toml
(Windows).Method 2:
Runsloctl add-context
, name the context, and paste the Client ID and Client Secret from the web UI when prompted.Method 3:
You can also passsloctl
configuration through the environment variables: either to overwrite your settings from config.toml, or pass them directly without aconfig.toml
file. See below for details.
Test the configuration by entering
sloctl get slos
into the command line.
If there are no SLOs created in your account or in the selected project, you might see this message: No resources found in default project
. This indicates that the configuration is correct; if it’s not, the command will return a 401 error.
Configure sloctl
with Environmental Variables
If you don't want sloctl to create any configuration files in your homepath, you can configure it by passing the following environmental variables:
Variable name | Description |
---|---|
SLOCTL_CLIENT_ID | Set your Nobl9 client ID (mandatory). |
SLOCTL_CLIENT_SECRET | Set your Nobl9 client secret (mandatory). |
SLOCTL_CONTEXT | Set your sloctl context (optional). |
SLOCTL_PROJECT | Set your Nobl9 project (optional). |
sloctl
image
Nobl9's sloctl
image is published on Docker Hub. You can leverage it to integrate Nobl9 in the CI/CD pipelines.
Configuration
Follow these steps to use the sloctl
image:
- Pull the
sloctl
docker image by entering the following command:
docker pull nobl9/sloctl:latest
- Test it by running the following:
docker run nobl9/sloctl:latest --help
sloctl
is the entrypoint. As such, when entered on the command line, commands do not have to be preceded by sloctl
, for example: docker run nobl9/sloctl:latest --help
.
If you want to leverage the sloctl
image for commands that require authentication, you must pass your Client ID and Client Secret. You can do it by:
- Passing your
config.toml
file - Passing your secrets to Docker as environment variables.
- config.toml
- Env Variables
config.toml
file to the Docker container:- Download your
config.toml
file from the Nobl9 UI and follow the instructions described in the Configuration section. - Move
config.toml
to a directory of your choice. - Set the environment variable to the full path where your
config.toml
is located, for example:export N9_AUTH=‘/full/path/to/directory‘
docker run
-e SLOCTL_CLIENT_ID=$SLOCTL_CLIENT_ID \ # mandatory, your Client ID
-e SLOCTL_CLIENT_SECRET=$SLOCTL_CLIENT_SECRET \ # mandatory, your Client Secret
-e SLOCTL_CONTEXT=$SLOCTL_CONTEXT \ # optional
-e SLOCTL_PROJECT=$SLOCTL_PROJECT \ # optional
nobl9/sloctl:latest get slos
SLOCTL_CONTEXT
and SLOCTL_PROJECT
are optional variables that you can pass along with your secrets.Refer to the section above for more information about sloctl
environmental variables.Use Cases
When you applied the authentication config file, you can test it by running docker run
command with the -v
flag for bind mounting the directory. The command should return all your SLOs.
docker run -v $N9_AUTH:/home/appuser/.config/nobl9 nobl9/sloctl:latest get slos
Note that sloctl
is expecting to find your config file at /home/appuser/.config/nobl9
from within the container.
You can now run other sloctl
commands with the same line by changing the sloctl
command at the end, for example:
docker run -v $N9_AUTH:/home/appuser/.config/nobl9 nobl9/sloctl:latest <sloctl command>
Overview of sloctl
Commands and Objects
Summary of Root sloctl
Commands
The following are the available commands in sloctl
. When entered on the command line they should all be preceded by sloctl
; for example, sloctl delete
.
Command | Description |
---|---|
apply | Apply a resource definition in YAML or JSON format. |
completion | Generate the autocompletion script for sloctl for the specified shell. |
delete | Delete a resource definition (specified by name or definition file). |
get | Display one or more resources. |
help | Get help on any command. |
use-context | Set the default context. |
version | Print the sloctl version. |
For more details, see the sloctl Root Commands section below.
Summary of sloctl
Config Commands
The following are the available config commands in sloctl
. When entered in the command line they should all be preceded by sloctl config
; for example, sloctl config use-context
:
Command | Description |
---|---|
add-context | Add a new sloctl configuration context. |
current-context | Display current context. |
delete-context | Delete chosen context. |
get-contexts | Display all available contexts. |
rename-context | Rename chosen context. |
use-context | Set the default context. |
For more details, see the sloctl Config Commands section below.
Common Objects
The following are the API objects that you can manipulate with sloctl
using the different commands. For details about each object, see the YAML Guide.
Object arguments follow the [command]
argument in the sloctl
command line:
sloctl [command] [object]
For example:
sloctl get agents
Object | Description |
---|---|
agents | Provide a solution to metrics collection from external sources. In this solution, users deploy the agents. |
alertmethods | Allow you to send alerts to specific notification engines or tools when an incident is triggered. |
alertpolicies | Define a set of conditions that, when met, cause an alert to be a sent to a predefined list of integrations. |
alertsilences | Silence alerts for a defined period not to receive notifications when an alert event is triggered. |
alerts | Allow notifications to be sent about SLOs when certain conditions are met. |
dataexports | Define a configuration to export your data from Nobl9. |
directs | Provide a SaaS solution to metrics collection from external sources. |
projects | Serve as workspaces for resources and provide a layer of isolation for resources in different projects. |
rolebindings | Assign a user the permissions indicated in a role. |
services | Serve as high-level groupings of SLOs. |
slos | Define a set of target values for an SLO. |
Flags
Common flags pass data to a command or parameter:
Flag | Long Form | Description |
---|---|---|
-h | --help | Get help. |
-o | --output string | Specify the output format: one of `yaml |
Certain sloctl
commands accept other flags. Global flags define the scope of the current command, such as the project, context, or location of the configuration file:
Flag | Long Form | Description |
---|---|---|
-A | --all-projects | Display the objects from all of the projects. |
--config string | Specify the path to the config file (without this flag, sloctl checks in %UserProfile%\.config\nobl9\config.toml on Windows and ~/.config/nobl9/config.toml on other operating systems). | |
-c | --context string | Override the default context for the duration of the command. |
-p | --project string | Override the default project from the active context for the duration of the command. |
sloctl
Root Commands
apply
The apply
command commits your changes by sending the updates to the application.
Example Usage:
sloctl apply [flags]
Examples:
Apply the configuration from slo.yaml:
sloctl apply -f ./slo.yaml
Apply the YAML file to deploy the Agent:
sloctl apply -f ./agent.yaml
noteYou can deploy only one Agent in one YAML file.
Apply resources from multiple different sources at once:
sloctl apply -f ./slo.yaml -f test/config.yaml -f <<https://my-definition.com/slo.yaml>>
Apply the YAML or JSON passed directly into stdin:
cat slo.yaml | sloctl apply -f -
Apply the configuration from slo.yaml and set the project if it is not defined in the file:
sloctl apply -f ./slo.yaml -p slo
Flags:
Flag | Long Form | Description |
---|---|---|
-f | --file string | Provide a file path or a URL to the configuration in YAML or JSON format. This option can be used multiple times. |
-h | --help | Get help. |
--dry-run | Submits server-side request without persisting the configured resources. |
When passed with the apply
command, the --dry-run
flag tests if your YAML definitions are correct. Note that currently, the command provides a basic validation of YAML definitions: it acts like an apply
command without persisting the changes.
Global Flags:
Flag | Long Form | Description |
---|---|---|
-A | --all-projects | Display the objects from all of the projects. |
--config string | Specify the path to the config file (without this flag, sloctl checks in %UserProfile%.config\nobl9\config.toml on Windows and ~/.config/nobl9/config.toml on other operating systems). | |
-c | --context string | Override the default context for the duration of the command. |
-p | --project string | Override the default project from the active context for the duration of the command. |
Available objects:
agents
,alertmethods
,alertpolicies
,alertsilences
,alerts
,annotations
,dataexports
,directs
,projects
,rolebindings
,services
,slos
Use sloctl apply [object] --help
for more information about using the apply
command with different objects.
When the specified changes have been applied successfully, you will see the following confirmation message:
sloctl apply -f ./samples/sample.yaml
Resources successfully created.
completion
The completion
command generates the autocompletion script for sloctl
for the specified shell.
Example Usage:
sloctl completion [command]
Available commands
Command | Description |
---|---|
bash | Generate the autocompletion script for bash. |
fish | Generate the autocompletion script for fish. |
powershell | Generate the autocompletion script for PowerShell. |
zsh | Generate the autocompletion script for zsh. |
Flags:
Flag | Long Form | Description |
---|---|---|
-h | --help | Get help. |
Global Flags:
Flag | Long Form | Description |
---|---|---|
-A | --all-projects | Display the objects from all of the projects. |
--config string | Specify the path to the config file (without this flag, sloctl checks in %UserProfile%\.config\nobl9\config.toml on Windows and ~/.config/nobl9/config.toml on other operating systems). | |
-c | --context string | Override the default context for the duration of the command. |
-p | --project string | Override the default project from the active context for the duration of the command. |
delete
The delete
command allows users to delete different resources.
Example Usage:
sloctl delete [flags]
sloctl delete [command]
Examples:
Delete the configuration from slo.yaml:
sloctl delete -f ./slo.yaml
Delete resources from multiple different sources at once:
sloctl delete -f ./slo.yaml -f test/config.yaml -f <<https://my-definition.local/slo.yaml>>
Delete the YAML or JSON passed directly into stdin:
cat slo.yaml | sloctl delete -f -
Delete specific resources by specifying their names:
sloctl delete slo my-slo-name
Delete the configuration from slo.yaml and set the project context if it is not defined in the file:
sloctl delete -f ./slo.yaml -p slo
Available objects:
agents
,alertmethods
,alertpolicies
,alertsilences
,alerts
,annotations
,dataexports
,directs
,projects
,rolebindings
,services
,slos
For details, see Common Objects.
Flags:
Flag | Long Form | Description |
---|---|---|
-f | --file string | Provide a file path or a URL to the configuration in YAML or JSON format. This option can be used multiple times. |
-h | --help | Get help. |
--dry-run | Submits server-side request without persisting the configured resources. |
When passed with the delete
command, the --dry-run
flag tests if your YAML definitions are correct. Note that currently, the command provides a basic validation of YAML definitions: it acts like a delete
command without persisting the changes.
Global Flags:
Flag | Long Form | Description |
---|---|---|
-A | --all-projects | Display the objects from all of the projects. |
--config string | Specify the path to the config file (without this flag, sloctl checks in %UserProfile%\.config\nobl9\config.toml on Windows and ~/.config/nobl9/config.toml on other operating systems). | |
-c | --context string | Override the default context for the duration of the command. |
-p | --project string | Override the default project from the active context for the duration of the command. |
Use sloctl delete [object] --help
for more information about using the delete
command with different objects.
When the specified objects have been deleted successfully, sloctl
shows the following confirmation message:
sloctl delete -f example.yaml
The resources were successfully deleted.
get
The get
command prints a table of the most important information about the specified resources.
Example Usage:
sloctl get [object]
Available objects:
agents
,alertmethods
,alertpolicies
,alertsilences
,alerts
,annotations
,dataexports
,directs
,projects
,rolebindings
,services
,slos
For details, see Common Objects.
Flags:
Flag | Long Form | Description |
---|---|---|
-h | --help | Get help. |
-k | --with-keys | Display client_secret and client_id (available only for sloctl get agents ). |
-l | --labels | Filter resources by label. For example: key=value,key2=value2,key2=value3 . |
-o | --output string | Specify the output format: one of `table |
Global Flags:
Flag | Long Form | Description |
---|---|---|
-A | --all-projects | Display the objects from all of the projects. |
--config string | Specify the path to the config file (without this flag, sloctl checks in %UserProfile%\.config\nobl9\config.toml on Windows and ~/.config/nobl9/config.toml on other operating systems). | |
-c | --context string | Override the default context for the duration of the command. |
-p | --project string | Override the default project from the active context for the duration of the command. |
Use sloctl get [object] --help
for more information about using the get
command with different objects.
Notes:
If there are no objects of the given type associated with the given project,
sloctl
returns the following message:sloctl get slo
No resources found in 'default' project.If a user provides a valid type (e.g.,
slo
) without a mandatory name,sloctl
returns a list of objects:sloctl get slo
- apiVersion: n9/v1alpha
kind: SLO
metadata:
name: streaming-slo
project: default
spec:
...
- apiVersion: n9/v1alpha
kind: SLO
metadata:
name: streaming-other-slo
project: default
spec:
...If a user provides an object type and name,
sloctl
returns only the specific object:sloctl get slo streaming-other-slo
- apiVersion: n9/v1alpha
kind: SLO
metadata:
displayName: Streaming Other
name: streaming-other-slo
project: default
spec:
alertPolicies:
- budget-is-burning-too-fast
budgetingMethod: Occurrences
description: ""
indicator:
metricSource:
kind: Agent
name: prometheus-source
project: default
rawMetric:
prometheus:
promql: cpu_usage_user{cpu="cpu-total"}
objectives:
- displayName: Good
op: lte
tag: default.streaming-other-slo.100d000000
target: 0.9
value: 100
- displayName: Poor
op: lte
tag: default.streaming-other-slo.200d000000
target: 0.99
value: 200
service: webapp-service
timeWindows:
- count: 7
isRolling: true
period:
begin: "2021-04-28T13:09:35Z"
end: "2021-05-05T13:09:35Z"
unit: DayIt is possible to pass multiple names, space-separated:
sloctl get slo streaming-other-slo streaming-latency-slo
It is possible to combine flags. For instance, if you'd like to retrieve Agents' secrets for all projects, you can use the following command:
sloctl get agents -Ak
The
-k
flag works only with thesloctl get agents
command. It retrivesclient_id
andclient_secret
for all Agents in thedefault
project. If you want to retrieveclient_id
andclient_secret
for all Agents in your Organization, use the-A
flag as follows:sloctl get agents -Ak
.cautionTo get
client_id
andclient_secret
, Nobl9 sends a request for every Agent in your Organization. It means that every additional Nobl9 Agent in your organization increases the waiting time for a response fromsloctl
.To reduce the waiting time, we recommend specifying in your sloctl command Agents' names for which you want to retrieve the
client_id
andclient_secret
, for example:sloctl get agents my-agent1 my-agent2
help
(Start Screen)
sloctl
sloctl -h
sloctl --help
Use this tool to work with definitions of SLOs in YAML files. For a list of commands available for execution, see Summary of sloctl
Commands above.
For each command, more detailed help is available: use sloctl [command] --help
for more information about a command.
Example Usage:
sloctl [command] --help
Flags:
Flag | Long Form | Description |
---|---|---|
-h | --help | Get help. |
Global flags:
Flag | Long Form | Description |
---|---|---|
-A | --all-projects | Display the objects from all of the projects. |
--config string | Specify the path to the config file (without this flag, sloctl checks in %UserProfile%\.config\nobl9\config.toml on Windows and ~/.config/nobl9/config.toml on other operating systems). | |
-c | --context string | Override the default context for the duration of the command. |
-p | --project string | Override the default project from the active context for the duration of the command. |
version
The version
command prints the installed version of sloctl
.
Usage:
sloctl version
The output includes the system architecture. For example:
sloctl/0.0.50-HEAD-bc7ec082 (linux amd64 go1.16.3)
sloctl
Config Commands
sloctl config
command allows you to manage configurations stored in the .toml
configuration file.
Usage:
sloctl config [command]
Flags
Flag | Long Form | Description |
---|---|---|
-h | --help | Help for config. |
Global Flags:
Flag | Long Form | Description |
---|---|---|
-A | --all-projects | Display the objects from all of the projects. |
--config string | Specify the path to the config file (without this flag, sloctl checks in %UserProfile%.config\nobl9\config.toml on Windows and ~/.config/nobl9/config.toml on other operating systems). | |
-c | --context string | Override the default context for the duration of the command. |
-p | --project string | Override the default project from the active context for the duration of the command. |
add-context
The add-context
command adds a new sloctl
configuration context.
A context in Nobl9 is a configuration you use to access the Nobl9 app with your user account. It is a set of access parameters that includes a Client ID, Client Secret, and a Project.
You can switch between different contexts depending on what Project you wish to work against in sloctl. For this see the use-context
command below.
Example Usage:
sloctl config add-context
This is an interactive command that collects parameters in a wizard mode, as follows:
Set the context name.
New context name:
Enter the context name and press EnterSet the Client ID. In the Nobl9 UI, the Client ID is generated by navigating to Settings > Access Keys > Create Access Key:
Client ID:
Enter the Client ID and press EnterSet the Client Secret.
Client Secret:
Enter the Client Secret and press EnterSet a default Project. The project can be overridden with the
-p
(--project
) flag in any command.Project [default]:
Enter the default project name and press EnterIndicate whether the newly created context should be set as the default now.
Set '{context name from Step 1}' as a default context? [y/N]:
Typey
(for Yes) orn
(for No) and press Enter.
noteHitting Enter without selecting
y
orn
defaults to No.
current-context
The current-context
command displays configuration for the current context set in the configuration file.
Example Usage:
sloctl config current-context
If you don't add any flags to the command, sloctl will return the following output:
default
If you add a -v
(--verbose
) flag to the command, sloctl
will return the following output:
Example Usage:
sloctl config current-context -v
Output:
context: default
ClientID: # secret
ClientSecret: # secret
Project: default
delete-context
The delete-context
command deletes one of the contexts in the configuration file.
The command requires exactly one argument with the context name.
Example Usage:
sloctl config delete-context [contextName]
get-contexts
The get-contexts
command displays one or many existing contexts.
Example Usage:
sloctl config get-contexts
This command returns all user contexts. If you don't add any arguments to the command, sloctl will return the following output:
All available contexts [default, sandbox].
If you add add a -v
(--verbose
) flag to the command, sloctl
will return the following output:
All available contexts: [default, sandbox]
Context: default
ClientID: # secret
ClientSecret: # secret
Project: default
Context: sandbox
ClientID: # secret
ClientSecret: # secret
Project: default
If you specify one or more contexts in the command (sloctl config context-3 default -v
), sloctl
will return the following output:
All available contexts: [context-1, context-2, context-3, default, sandbox]
Context: context-3
ClientID: # secret
ClientSecret: # secret
Project: default
Context: default
ClientID: # secret
ClientSecret: # secret
Project: default
Flags:
Flag | Long Form | Description |
---|---|---|
-h | --help | Get help. |
-v | --verbose | Get verbose output on the available contexts. |
Global flags:
Flag | Long Form | Description |
---|---|---|
-A | --all-projects | Display the objects from all of the projects. |
--config string | Specify the path to the config file (without this flag, sloctl checks in %UserProfile%\.config\nobl9\config.toml on Windows and ~/.config/nobl9/config.toml on other operating systems). | |
-c | --context string | Override the default context for the duration of the command. |
-p | --project string | Override the default project from the active context for the duration of the command. |
rename-context
The rename-context
command renames one of the contexts in the configuration file.
The command requires exactly two arguments with names of your contexts.
Example Usage:
sloctl config rename-context [oldContext] [newContext]
use-context
You can define multiple contexts in sloctl
, and the use-context
command allows you to choose the default context. It is helpful if the user belongs to multiple organizations or wants to switch between different default projects.
Also see the add-context
command above.
Example Usage:
The use-context
command sets the default context for sloctl
.
sloctl config use-context [context-name] # non-interactive mode
sloctl config use-context # interactive mode
When sloctl use-context
is used in interactive mode and some contexts are already defined, the user is asked to select a context from the list (by typing its name at the prompt):
sloctl config use-context
Select the default context from the existing contexts [default, sandbox]:
When no contexts have been defined yet, sloctl
returns the following error:
Error: You don't have any contexts in the current configuration file.
Add at least one context in the current configuration file and then set it as the default.
Run 'sloctl config add-context' or indicate the path to the file using flag '--config'.
Flags:
Flag | Long Form | Description |
---|---|---|
-h | --help | Get help. |
Global flags:
Flag | Long Form | Description |
---|---|---|
-A | --all-projects | Display the objects from all of the projects. |
--config string | Specify the path to the config file (without this flag, sloctl checks in %UserProfile%\.config\nobl9\config.toml on Windows and ~/.config/nobl9/config.toml on other operating systems). | |
-c | --context string | Override the default context for the duration of the command. |
-p | --project string | Override the default project from the active context for the duration of the command. |
Common Errors/Warnings
The following are common errors/warnings that users may experience:
When a user applies a default context that does not exist:
sloctl config use-context not-existing-context
Error: There is no such context: 'not-existing-context'. Please enter the correct name.When a user wants to add a context that already exists:
sloctl config add-context
New context name: local
Context 'local' is already in the configuration file.
Do you want to overwrite it? [y/N]:If the user answers
n
(for No), the following message is shown:Please try to add a new context with a different name.
When a context is configured with incorrect credentials, as in:
(config.toml context)
defaultContext = "local"
[Contexts]
[Contexts.local]
clientId = "xyz"
clientSecret = "xyz"and a user wants to invoke any command:
Error: error getting new access token from the customer identity provider: cannot access the token, customer identity provider replied with 401 {"errorCode":"invalid_client","errorSummary":"Invalid value for 'client_id' parameter.","errorLink":"invalid_client","errorId":"oaejFe6MwoIRo200IuIj7Hp1g","errorCauses":[]}
When a user provides a path to an invalid file:
sloctl apply -f xyz.yaml
Error: error while reading provided file: open xyz.yaml: no such file or directoryWhen a user provides an invalid context name:
sloctl config add-context
New context name: ^
Error: Enter a valid context name. Use letters, numbers, and `-` characters.
Use Cases of SLO Configurations
For detailed examples of how to create SLOs for sample services using sloctl
, refer to the Getting Started Guide.
Useful Links
sloctl
Releases page