1. Resources
  2. /
  3. Plugins
  4. /
  5. deployment-marker-buildkite-plugin

Last9 Deployment Marker — Buildkite Plugin

CI

Sends deployment events to Last9 from Buildkite pipelines so you can correlate releases with errors, latency shifts, and APDEX changes on your dashboards.

steps:
  - label: ":rocket: Deploy"
    command: ./deploy.sh
    plugins:
      - last9/deployment-marker#v1.0.0:
          refresh_token: "${LAST9_REFRESH_TOKEN}"
          org_slug: "your-org"
          env: "production"

That’s it. The plugin wraps your deploy step — fires a start event before it runs and a stop event when it completes (success on exit 0, failure on anything else) with duration_ms included automatically.

Configuration

OptionRequiredDefaultDescription
refresh_tokenYesLast9 API refresh token
org_slugYesYour Last9 organization slug
envYesDeployment environment (production, staging, …)
serviceNoPipeline slugService name — must match your APM service_name label
event_nameNodeploymentLabel for the change event
data_source_nameNoLast9 cluster or data source name
api_base_urlNohttps://app.last9.ioOverride the Last9 API base URL
max_retry_attemptsNo3Retry attempts on failure
retry_backoff_msNo1000Initial backoff in ms
max_retry_backoff_msNo30000Maximum backoff cap in ms

Store LAST9_REFRESH_TOKEN as a Buildkite secret or in your agent’s environment hooks. Never hard-code it.

What gets sent

Every event includes the deployment outcome plus the full Buildkite context automatically:

AttributeSource
serviceservice config (or pipeline slug)
envenv config
resultsuccess / failure (stop event only)
pipeline_slugBUILDKITE_PIPELINE_SLUG
pipeline_nameBUILDKITE_PIPELINE_NAME
build_idBUILDKITE_BUILD_ID
build_numberBUILDKITE_BUILD_NUMBER
build_urlBUILDKITE_BUILD_URL
commit_shaBUILDKITE_COMMIT
branchBUILDKITE_BRANCH
tagBUILDKITE_TAG
commit_messageBUILDKITE_MESSAGE
actorBUILDKITE_BUILD_CREATOR (falls back to BUILDKITE_BUILD_AUTHOR)
step_labelBUILDKITE_LABEL
step_keyBUILDKITE_STEP_KEY
job_idBUILDKITE_JOB_ID
sourceBUILDKITE_SOURCE
retry_countBUILDKITE_RETRY_COUNT
triggered_from_build_idBUILDKITE_TRIGGERED_FROM_BUILD_ID
rebuilt_from_build_idBUILDKITE_REBUILT_FROM_BUILD_ID
duration_msComputed: wall-clock time from step start to marker send (stop event only)

Empty values are omitted. result and duration_ms are only present on the stop event.

Requirements

curl and jq — both available on standard Buildkite agent images.

Documentation

Full documentation at last9.io/docs/integrations/ci-cd/buildkite.

The plugins listed on this webpage are provided for informational purposes only. They have not undergone any formal security review or assessment. While we strive to provide useful resources, we cannot guarantee the safety, reliability, or integrity of these plugins. Users are strongly advised to conduct their own security evaluations before downloading, installing, or using any plugin. By using these plugins, you acknowledge and accept any risks associated with their use. We disclaim any liability for any harm or damages arising from the use of the plugins listed.

Start turning complexity into an advantage

Create an account to get started for free.

Buildkite Pipelines

Platform

  1. Pipelines
  2. Public pipelines
  3. Test Engine
  4. Package Registries
  5. Mobile Delivery Cloud
  6. Pricing

Hosting options

  1. Self-hosted agents
  2. Mac hosted agents
  3. Linux hosted agents

Resources

  1. Docs
  2. Blog
  3. Changelog
  4. Example pipelines
  5. Plugins
  6. Webinars
  7. Case studies
  8. Events
  9. Migration Services
  10. CI/CD perspectives

Company

  1. About
  2. Careers
  3. Press
  4. Security
  5. Brand assets
  6. Contact

Solutions

  1. Replace Jenkins
  2. Workflows for MLOps
  3. Testing at scale
  4. Monorepo mojo
  5. Bazel orchestration

Legal

  1. Terms of Service
  2. Acceptable Use Policy
  3. Privacy Policy
  4. Subprocessors
  5. Service Level Agreement
  6. Supplier Code of Conduct
  7. Modern Slavery Statement

Support

  1. System status
  2. Forum
© Buildkite Pty Ltd 2026