extension-gcp 1.0.35
- feat(extvm): add gcp.region attribute to VM targets
- fix(extvm): copy VM labels and instance id to enriched targets
Add these Atom feeds to your RSS reader (or import the OPML file with all of them):
amq.* built-ins and internal exchanges)rabbitmq.cluster.nameuri tag of k8s.api.call now normalizes namespaces and object names for every path shape, not just pods and services under /api/v1.k8s.workload-owner and k8s.workload-typeactor.accounts, which also contains the organization's internal storage account and caused permission errors on workload discovery and failed event deliverydata, workload or aiIssues payload, as it does for queries the API key's user is not permitted to runThe following changes are part of Steadybit Labs, our program for early-access features. Expect them to evolve based on your feedback.
Cmd/Ctrl + .; on wide screens the panel docks into the layout instead of overlaying it./api/explore/landscape/views, closing the gap where saved views existed only in the UI._ and % are literal in query language values — A value containing _ or % now matches literally instead of being treated as a wildcard.None, and table ellipsis, the dashboard's target distribution and the target table's columns were corrected.postcss 8.5.23 and the Steadybit UI components library 0.5.4.psql can no longer create or drop an index in the wrong schema.experiment_rsocket_resume_total. (Requires Platform >=2.8.1)The following changes are part of Steadybit Labs, our program for early-access features. Expect them to evolve based on your feedback.
2.4.1 or later)prepare payloads – RSocket frame fragmentation between agent and platform is now enabled, so keep-alive and Pong frames are no longer blocked behind large, unfragmentable prepare-phase payloads (for example, a pod-count check across 100+ targets) on slower connections.applicable, exclude, or action-required predicates use not contains or unequals, even when the referenced attribute isn't reported as changed.Settings → Integrations is centered, the onboarding footer is aligned correctly, and the agent count is rounded again.tcp/udp packets, so portless traffic such as ping slipped through the attack. Port-scoped excludes now also only spare their tcp/udp port and no longer spare all ICMP traffic to/from the excluded address.oom_score_adj so the Linux OOM killer targets other processes first during memory-pressure experiments.extension-gcp.The following changes are part of Steadybit Labs, our program for early-access features. Expect them to evolve based on your feedback.
attr IN ({{var}}) expression. Read moreentitySelector when querying Dynatrace problems, preventing query-parameter injection into the Dynatrace API (matches the existing escaping in the entities query)fill-disk and fill-memory no longer crash the extension during Prepare when a config parameter is missing or has an unexpected type; config values are now read via the tolerant extutil helpers.executionContext (nil pointer dereference in mapToExecutionContext).stop-process attack no longer crashes the extension with a nil pointer dereference when a matched process exits before it is stopped (ps.FindProcess returns nil, nil for a vanished PID on Linux).FindRoute now nil-guards the comparisons (and the not-found error no longer dereferences an unset service name)/health and /prometheus.Exclude Hostnames (excludeHostname) and Exclude IPs/CIDRs (excludeIp) parameters on all network attacks sharing the hostname/IP/port filters (delay, loss, corruption, bandwidth, blackhole, TCP reset) — affect all traffic except the given hosts or IPs/CIDRs. Excludes always take precedence over the include restrictions. The existing filter parameters are relabeled to Include Hostnames, Include IPs/CIDRs and Include Ports to make the distinction explicit.tc applies against the same netns — the second apply then collided at the kernel level (e.g. htb.change rejected because the first apply had installed active classes at handle 1:). The first Start on a netns now applies the attack ("primary"), later Starts on the same netns no-op ("shadow"), and Stop mirrors the same split.TargetExecutionId nonce from the serialized opts before the multi-container dedup comparison. Steadybit fires one action per container target, so sibling containers of the same pod running the same experiment had different state.NetworkOpts bytes — the previous byte-identical comparison never matched siblings and every one of them fell through to Passthrough, reproducing the Change operation not supported collision the dedup was supposed to prevent. ExperimentExecutionId is deliberately kept in the comparison so two unrelated experiments running the same attack on the same pod stay independent (otherwise one experiment's Stop would tear down the other's still-active tc state).Exclude Hostnames (excludeHostname) and Exclude IPs/CIDRs (excludeIp) parameters on all network attacks sharing the hostname/IP/port filters (delay, loss, corruption, bandwidth, blackhole, TCP reset) — affect all traffic except the given hosts or IPs/CIDRs. Excludes always take precedence over the include restrictions. The existing filter parameters are relabeled to Include Hostnames, Include IPs/CIDRs and Include Ports to make the distinction explicit.action_kit_commons to v1.10.2 — stopping a network attack no longer fails with restore qdisc fq_codel on <iface>: netlink receive: no such file or directory on stock multi-queue NICs (e.g. AWS ENA ens5), where the kernel attaches the default mq 0: tree anonymously. The qdisc snapshot restore now skips those kernel-default children (handle 0 is unaddressable via RTNETLINK; the kernel re-creates them identically anyway).Exclude Hostnames (excludeHostname) and Exclude IPs/CIDRs (excludeIp) parameters on the WinDivert-based network attacks (delay, blackhole, package loss, package corruption) — affect all traffic except the given hosts or IPs/CIDRs. Excludes always take precedence over the include restrictions. The existing filter parameters are relabeled to Include Hostnames, Include IPs/CIDRs and Include Ports to make the distinction explicit. The bandwidth attack is not covered: Windows QoS policies only support include-style match conditions.The following changes are part of Steadybit Labs, our program for early-access features. Expect them to evolve based on your feedback.
concurrent map writes crash when multiple ECS task attacks run concurrentlymaxConcurrent of 0 in the HTTP check actions instead of deadlocking the request schedulerextcmd.CmdState.Wait/ExitCode)oom_score_adj on startup via extension-kit's extruntime.AdjustOOMScoreAdj() to avoid being killed by the node OOM killer. The extension sets it directly using the cap_sys_resource file capability (default -998, configurable via STEADYBIT_EXTENSION_OOM_SCORE_ADJ).s0) so target JVMs can read the mounted javaagent jars. Without this, SELinux denies the agent jar read (each namespace gets distinct MCS categories) and attacks fail with "connection not found". The SCC pins the level via seLinuxContext: MustRunAs; override via podSecurityContext.seLinuxOptions (mirrored into the SCC).extcmd.CmdState.Wait/ExitCode)X-API-Key header and download the collection/environment in-process instead of embedding the API key in the newman command line and serialized action state (prevents leaking the key via ps//proc/<pid>/cmdline)extcmd.CmdState.Wait/ExitCode)/tmp that could collide between concurrent runs and were never cleaned upquery parameter is not a stringmaxmemory is left alteredredis://user:pass@host URL is no longer exposed to the platform or logs (the full credentials remain in the endpoint configuration and are still used to connect)STEADYBIT_EXTENSION_NETWORK_STRICT_ROOT_QDISC=false (e.g. via extraEnv) to make Apply capture the root qdisc tree (qdiscs + filters) of every target interface and Revert replay it after the attack's tc del. Preserves cloud-tuned root qdiscs (e.g. GKE's mq + fq with buckets=32768 horizon=2s) that would otherwise revert to kernel defaults after tc qdisc del root and leave the host network degraded until reboot. Off by default; Linux only.STEADYBIT_EXTENSION_NETWORK_STRICT_ROOT_QDISC=false to make Apply capture the root qdisc tree (qdiscs + filters) of every target interface and Revert replay it after the attack's tc del. Preserves cloud-tuned root qdiscs (e.g. GKE's mq + fq with buckets=32768 horizon=2s) that would otherwise revert to kernel defaults after tc qdisc del root and leave the host network degraded until reboot. Off by default; Linux only.discovery.disabled.envoyGateway). Discovers HTTPRoutes served by an Envoy Gateway GatewayClass and adds two attacks that apply an Envoy Gateway BackendTrafficPolicy for the attack duration: "Envoy Delay Traffic" and "Envoy Abort Traffic" (the latter can optionally overwrite the response body). Attacks refuse to run when another BackendTrafficPolicy already targets the route (Envoy Gateway resolves conflicts oldest-wins).k8s.container.id, k8s.pod.name, k8s.namespace, k8s.replicaset, k8s.deployment, k8s.daemonset, k8s.statefulset, k8s.service.name) before attaching them to targets, so unrelated Go map/list iteration order no longer registers as a spurious attribute change on every discovery cyclesignal parameter and pass it to the fallback shell as a positional argument, preventing command injection into the target pod (the signal option list is a UI hint only and was not enforced)The following changes are part of Steadybit Labs, our program for early-access features. Expect them to evolve based on your feedback.
tags and variables are now available in event-kit, preflight-kit, and webhooksk8s.specification.has-hpa / has-pdb) — drops the detailed multi-valued attributes that caused per-cycle platform DB churn on large clustershostNetwork: true pods or on containers whose eth0 already has a kernel-default root qdisc no longer fail with NLM_F_REPLACE needed to override. The root qdisc is now installed via tc qdisc replace; on revert the kernel restores its default (mq, noqueue, fq_codel, pfifo_fast, fq).htb, cake) that cannot be restored afterwards, the attack now fails fast in the prepare step with a clear error instead of silently replacing it.STEADYBIT_EXTENSION_NETWORK_STRICT_ROOT_QDISC=true (e.g. via extraEnv) to make network attacks refuse any interface whose root qdisc is not noqueue — including the kernel default mq — instead of replacing it. Off by default.privileged chart value (default false): runs the extension in privileged mode and switches the managed SecurityContextConstraint to allow it. Needed on hardened nodes (e.g. CIS/STIG) where the container root filesystem is mounted nosuid, which voids the binary's file capabilities and breaks fault injection (nsenter: operation not permitted).Cpus_allowed mask parsing bug).STEADYBIT_EXTENSION_NETWORK_SNAPSHOT_RESTORE=true (e.g. via extraEnv) to make Apply capture the root qdisc tree (qdiscs + filters) of the target interface and Revert replay it after the attack's tc del. Preserves cloud-tuned root qdiscs (e.g. GKE's mq + fq with buckets=32768 horizon=2s) that would otherwise revert to kernel defaults after tc qdisc del root and leave the host network degraded until reboot. Off by default; Linux only.mq on GKE COS / EKS / AKS / RHCOS). Previously the attack failed to start with NLM_F_REPLACE needed to override. The kernel default (mq, noqueue, fq_codel, pfifo_fast, fq) is restored automatically after the attack ends.htb, cake) that cannot be restored afterwards, the attack now fails fast in the prepare step with a clear error instead of silently replacing it.STEADYBIT_EXTENSION_NETWORK_STRICT_ROOT_QDISC=true (e.g. via extraEnv) to make network attacks refuse any interface whose root qdisc is not noqueue — including the kernel default mq — instead of replacing it. Off by default.privileged chart value (default false): runs the extension in privileged mode and switches the managed SecurityContextConstraint to allow it. Needed on hardened nodes (e.g. CIS/STIG) where the container root filesystem is mounted nosuid, which voids the binary's file capabilities and breaks fault injection (nsenter: operation not permitted).Cpus_allowed mask parsing bug).hostname parameter to restrict injection to DNS queries with matching query names (exact, case-insensitive, IDN-aware); also exposes the new hostname_filtered metric in the live statistics widgetport and cidr parameters — they apply to the DNS server, not to the queried domaindns-inject to v0.2.0hostname parameter to restrict injection to DNS queries with matching query names (exact, case-insensitive, IDN-aware); also exposes the new hostname_filtered metric in the live statistics widgetport and cidr parameters — they apply to the DNS server, not to the queried domaindns-inject to v0.2.0❗Warning: This release contains breaking database changes
This release reworks some internal database structures. Rolling back needs special care.
For on-prem customers, we strongly advise:
Create a database backup before the update, to be able to rollback to a previous version. In a multi-instance setup, all older instances must be stopped before starting any new instances when updating to this release. E.g. by using strategy: Recreate. Be aware that on termination, the platform waits for the experiment and agents to finish. If you force-delete the pod(s) during termination, the process might still be running.
Pause Clients attack now always issues CLIENT PAUSE ... WRITE and the pauseMode parameter has been removed. CLIENT PAUSE ALL could not be aborted early (Redis blocks CLIENT UNPAUSE itself under an active ALL pause) and also stalled the extension's own discovery probes for the entire duration. Pausing only writes keeps the attack fully reversible via CLIENT UNPAUSE and lets discovery (PING/INFO) keep running. The attack has been relabeled "Pause Write Clients".steadybit.group attribute to all targets. The value will be default as long as there is no value reported by the extensions. All enrichment rules will also get an additional matcher for the steadybit.group attribute. References:
STEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetextensionlib.deployment.env helper so standard env vars (logging, TLS, discovery group) flow through consistentlySTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetSTEADYBIT_EXTENSION_DISCOVERY_GROUP env var (or discovery.group Helm value) — when set, the extension adds steadybit.group=<value> to every discovered targetnsmount to v1.1.1 — lowers the GLIBC requirement from 2.30 to 2.28, restoring .deb/.rpm installation on RHEL 8 / Debian 10memfill to v1.3.1STEADYBIT_EXTENSION_DNS_INJECT_PATH was unset, causing DNS error injection attacks to fail on .deb/.rpm installationsnsmount to v1.1.1 — lowers the GLIBC requirement from 2.30 to 2.28, restoring .deb/.rpm installation on RHEL 8 / Debian 10memfill to v1.3.1nsmount, memfill and dns-inject were unset or pointed at the wrong directory, causing memfill and DNS error injection attacks to fail on .deb/.rpm installationsexecutionStepId field referencing the step that triggered the execution event⚠️ Update to 2.5.8 because of an error in the target enrichment causing the message queue to fill up.
⚠️ Update to 2.5.8 because of an error in the target enrichment causing the message queue to fill up.
STEADYBIT_EXTENSION_REQUEST_TIMEOUT and raise the default from 5s to 10s.STEADYBIT_EXTENSION_PROJECT_IDS (shared credentials) or STEADYBIT_EXTENSION_PROJECTS_ADVANCED (per-project service-account impersonation). The legacy STEADYBIT_EXTENSION_PROJECT_ID continues to work.Bump Go to 1.25.9
Support if-none-match for the extension list endpoint
steadybit.com/extension-auto-discovery annotationsResponses contain verification input was changed to a textarea to allow multi-line inputs.Responses contain verification parameters were renamed with v1.0.29. Existing experiment design will not verify the response if a paramter was set. This fix will revert the change and use the old parameter name.v1.0.29 and used the Responses contain verification parameter, you need to migrate experiment designs after updating to v1.0.30.v1.0.30 and having a database backup in placeSELECT es.experiment_key, es.custom_label, esa.action_id, es.parameters
FROM sb_onprem.experiment_step es JOIN sb_onprem.experiment_step_attack esa ON es.id = esa.id
WHERE esa.action_id IN ('com.steadybit.extension_http.check.periodically', 'com.steadybit.extension_http.check.fixed_amount')
AND parameters ? 'responsesContain';
UPDATE sb_onprem.experiment_step SET parameters = jsonb_set(parameters - 'responsesContain','{responsesContains}', parameters -> 'responsesContain')
WHERE id IN (
SELECT es.id
FROM sb_onprem.experiment_step es JOIN sb_onprem.experiment_step_attack esa ON es.id = esa.id
WHERE esa.action_id IN ('com.steadybit.extension_http.check.periodically', 'com.steadybit.extension_http.check.fixed_amount')
AND parameters ? 'responsesContain'
);
STEADYBIT_EXTENSION_ACCESS_TOKEN or appdynamics.accessTokenaws.zone.id was not set for all targetstag:GetResources)tag:GetResources)single_aws_zone,single_azure_zone and single_gcp_zone and combined them using the generic attribute k8s.label.topology.kubernetes.io/zone. With the new advice, you are no longer required to install the cloud provider specific extension.update sb_onprem.advice
set advice_definition_id='com.steadybit.extension_kubernetes.advice.single-zone',
validation_states = replace(validation_states::text, 'com.steadybit.extension_kubernetes.single-aws-zone',
'com.steadybit.extension_kubernetes.single-zone')::jsonb
where advice_definition_id = 'com.steadybit.extension_kubernetes.advice.single-aws-zone';
update sb_onprem.advice
set advice_definition_id='com.steadybit.extension_kubernetes.advice.single-zone',
validation_states = replace(validation_states::text, 'com.steadybit.extension_kubernetes.single-azure-zone',
'com.steadybit.extension_kubernetes.single-zone')::jsonb
where advice_definition_id = 'com.steadybit.extension_kubernetes.advice.single-azure-zone';
update sb_onprem.advice
set advice_definition_id='com.steadybit.extension_kubernetes.advice.single-zone',
validation_states = replace(validation_states::text, 'com.steadybit.extension_kubernetes.single-gcp-zone',
'com.steadybit.extension_kubernetes.single-zone')::jsonb
where advice_definition_id = 'com.steadybit.extension_kubernetes.advice.single-gcp-zone';
steadybit.com/discovery-disabled set to truetag:GetResources)ec2:DescribeVpcs, can be disabled by STEADYBIT_EXTENSION_DISCOVERY_DISABLED_VPC)Technology property in extension descriptioncategroy and technology of ECS Stop Task attackTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionTechnology property in extension descriptionsteadybit.agent.disable-jvm-attachment) are working againhelm upgrade steadybit-agent --install --namespace <replace-me-with-namespace> \
--create-namespace \
--set agent.key="<replace-me>" \
--set global.clusterName="<replace-me>" \
--set extension-container.container.runtime="<replace-me>" \
--set agent.registerUrl="<replace-me>"\
--set rbac.roleKind="role" \
--set agent.extensions.autodiscovery.namespace="<replace-me-with-namespace>" \
--set extension-kubernetes.role.create=true \
--set extension-kubernetes.roleBinding.create=true \
--set extension-kubernetes.clusterRole.create=false \
--set extension-kubernetes.clusterRoleBinding.create=false \
steadybit/steadybit-agent
STEADYBIT_EXTENSION_DISCOVERY_DISABLED_ECS)"ecs:ListClusters",
"ecs:ListTasks",
"ecs:DescribeTasks",
"ecs:ListServices",
"ecs:DescribeServices",
"ecs:StopTask",
"ecs:UpdateService"
STEADYBIT_EXTENSION_DISCOVERY_DISABLED_ELB)"elasticloadbalancing:DescribeLoadBalancers",
"elasticloadbalancing:DescribeListeners",
"elasticloadbalancing:DescribeTags",
"elasticloadbalancing:DescribeRules",
"elasticloadbalancing:SetRulePriorities",
"elasticloadbalancing:CreateRule",
"elasticloadbalancing:DeleteRule",
"elasticloadbalancing:AddTags",
"elasticloadbalancing:RemoveTags"
single-azure-zone, single-aws-zone, and single-gcp-zone) to establish a 20s base-line in the beginning of the experimentsingle-azure-zone, single-aws-zone, and single-gcp-zone) to consistently use the same zone in every stepk8s-single-replica to better explain how to increase replicas for deployments and HorizontalPodAutoscalerdiscovery.maxPodCount configurationSTEADYBIT_EXTENSION_ENRICH_EC2_DATA_MATCHER_ATTRIBUTEhost.domainname attribute containing the host FQDNhost.domainname attribute containing the host FQDNhorizontalpodautoscaler-replicasGOMEMLIMIT (90% of cgroup limit) and GOMAXPROCSGOMEMLIMIT (90% of cgroup limit) and GOMAXPROCSk8s.deployment.replicas to k8s.specification.replicask8s.label.topology.kubernetes.io/zone, k8s.label.topology.kubernetes.io/region, k8s.label.node.kubernetes.io/instance-type, k8s.label.kubernetes.io/os and k8s.label.kubernetes.io/arch to container, host, k8s-container, k8s-deplyoment, k8s-statefulset and k8s-daemonsetCould not find step infos for step execution ... in logsCould not find step infos for step execution ... in logsUpdate to the latest helm chart steadybit-extension-host-1.0.33 needed!
aws.zone.id to ec2- and rds-instancesaws.zone.id to all enrichment rulespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposespprof endpoints for debugging purposessteadybit/event-kit-api version 1.3.0>= 1.0.94application.name to container targetscontainer-to-jvm enrichmentdelete for pods resourcescreate for pods/eviction resources and patch for nodes resourcespatch for nodes resourcesget, update and patch for deployments/scale resourcesget, update and patch for statefulsets/scale resourcescreate for pod/exec resourceskubernetes-deployment during discovery instead of adding it via enrichment rulekubernetes-node instead of frequent enrichments via kubernetes-containerpprof endpoints for debugging purposesk8s.container.ready as this causes unnecessary enrichment noiseget, list, and watch for horizontalpodautoscalers resourcesDiscoveryAttributeExcludesslice index out of range error in discoveryDiscoveryDisabled*-Properties are working againSTEADYBIT_EXTENSION_WORKER_THREADSSTEADYBIT_EXTENSION_ENRICH_EC2_DATA_FOR_TARGET_TYPESkubernetes-container are handled as enrichment data and not as targets anymore. (This requires at least agent 1.0.92 and platform 1.0.79)steadybit.com.discovery-disabled"="true" during discoverysteadybit.com.discovery-disabled"="true" during discoveryhost.ipv6 and not host.ipv4aws-ec2..container.host.Status Check Mode. Supported values are All the time (default)
and At least once.graceful parameteraction_kit_sdkaction_kit_sdkaction_kit_sdk and thus use the extended rollback safety while having connection issuesec2-instance.state to com.github.steadybit.extension_aws.ec2_instance.state(extension)STEADYBIT_EXTENSION_TLS_SERVER_CERT and STEADYBIT_EXTENSION_TLS_SERVER_KEY. Both environment variables must refer to files containing the certificate and key in PEM format.STEADYBIT_EXTENSION_TLS_CLIENT_CAS. The environment must refer to a comma-separated list of files containing allowed clients' CA certificates in PEM format.STEADYBIT_EXTENSION_TLS_SERVER_CERT and STEADYBIT_EXTENSION_TLS_SERVER_KEY. Both environment variables must refer to files containing the certificate and key in PEM format.STEADYBIT_EXTENSION_TLS_CLIENT_CAS. The environment must refer to a comma-separated list of files containing allowed clients' CA certificates in PEM format.STEADYBIT_EXTENSION_TLS_SERVER_CERT and STEADYBIT_EXTENSION_TLS_SERVER_KEY. Both environment variables must refer to files containing the certificate and key in PEM format.STEADYBIT_EXTENSION_TLS_CLIENT_CAS. The environment must refer to a comma-separated list of files containing allowed clients' CA certificates in PEM format.STEADYBIT_EXTENSION_TLS_SERVER_CERT and STEADYBIT_EXTENSION_TLS_SERVER_KEY. Both environment variables must refer to files containing the certificate and key in PEM format.STEADYBIT_EXTENSION_TLS_CLIENT_CAS. The environment must refer to a comma-separated list of files containing allowed clients' CA certificates in PEM format.STEADYBIT_EXTENSION_TLS_SERVER_CERT
and STEADYBIT_EXTENSION_TLS_SERVER_KEY. Both environment variables must refer to files containing the certificate
and key in PEM format.STEADYBIT_EXTENSION_TLS_CLIENT_CAS. The environment must refer
to a comma-separated list of files containing allowed clients' CA certificates in PEM format.kind field to both actions.STEADYBIT_EXTENSION_TLS_SERVER_CERT and STEADYBIT_EXTENSION_TLS_SERVER_KEY. Both environment variables must refer to files containing the certificate and key in PEM format.STEADYBIT_EXTENSION_TLS_CLIENT_CAS. The environment must refer to a comma-separated list of files containing allowed clients' CA certificates in PEM format.STEADYBIT_EXTENSION_ASSUME_ROLES environment variable to a comma-separated list of role ARNs. Example: STEADYBIT_EXTENSION_ASSUME_ROLES='arn:aws:iam::1111111111:role/steadybit-extension-aws,arn:aws:iam::22222222:role/steadybit-extension-aws'.STEADYBIT_LOG_FORMAT env variable. When set to json, extensions will log JSON lines to stderr.STEADYBIT_LOG_FORMAT env variable. When set to json, extensions will log JSON lines to stderr.STEADYBIT_LOG_FORMAT env variable. When set to json, extensions will log JSON lines to stderr.STEADYBIT_LOG_FORMAT env variable. When set to json, extensions will log JSON lines to stderr.STEADYBIT_LOG_FORMAT env variable. When set to json, extensions will log JSON lines to stderr.STEADYBIT_LOG_FORMAT env variable. When set to json, extensions will log JSON lines to stderr.experiment.execution.failed, experiment.execution.canceled
and experiment.execution.errored to report all relevant event types to Datadog.monitoring to align with Datadog extension.extension-kit to support additional debugging log output.postman/newman Docker image.postman/newman Docker image does not support the linux/arm64 platform.STEADYBIT_LOG_LEVEL environment variable.STEADYBIT_LOG_LEVEL environment variable.STEADYBIT_LOG_LEVEL environment variable.STEADYBIT_LOG_LEVEL environment variable. Contributed by @achoimet.executionId deserializationgo-kong and use the new APIs so that plugin creation, updates and deletions happen using Kong API paths that are specific to services, i.e., located under /services.v1.1.1 to update the configuration within Steadybit.Content-Type and triggers. Contributed by @achoimet.No logs matched your search.