LogoLogo
Login to CortexBook a DemoCortex Academycortex.io
  • Cortex Docs
  • Cortex Quick Start
  • Ingesting data into Cortex
    • Managing Entities
      • Adding entities
        • Add services
        • Add domains
        • Add teams
        • Add custom entity types
        • Defining dependencies
      • Entity details page
      • Defining ownership
      • Defining relationship types
      • Grouping entities
      • Adding external documentation
      • Adding Deploy data
      • Adding custom data
      • Viewing discovered entities
      • Archiving entities
      • Relationship graph
      • Using On-call Assistant for incidents
      • Managing Terraform infra in Cortex
    • Managing Catalogs
    • Integrations
      • Internally hosted integrations
      • ArgoCD
      • AWS
      • Azure DevOps
      • Azure Resources
      • BambooHR
      • Bitbucket
      • BugSnag
      • Buildkite
      • Checkmarx
      • CircleCI
      • ClickUp
      • Codecov
      • Coralogix
      • Custom webhook integrations
      • Datadog
      • Dynatrace
      • Entra ID (Azure AD)
      • FireHydrant
      • GitHub
      • GitLab
      • Google
      • Grafana
      • incident.io
      • Instana
      • Jenkins
      • Jira
      • Kubernetes
      • LaunchDarkly
      • Lightstep
      • Mend
      • Microsoft Teams
      • New Relic
      • Okta
      • Opsgenie
      • PagerDuty
      • Prometheus
      • Rollbar
      • Rootly
      • Sentry
      • ServiceNow
      • Slack
      • Snyk
      • SonarQube
      • Splunk Observability Cloud (SignalFx)
      • Splunk On-Call (VictorOps)
      • Sumo Logic
      • Veracode
      • Wiz
      • Workday
      • xMatters
  • Scorecards
    • Initiatives and Action items
      • Creating issues based on Initiatives
    • Scorecard rule exemptions
    • Scorecard rule filters
    • Scorecard examples
    • Scorecards as code
  • Reports
    • Executive report
    • All Scorecards report
    • Bird's eye report
    • Progress report
    • Report card
  • Eng Intelligence
    • Custom Metrics
    • Jira Metrics
    • Metrics Explorer (Beta)
  • Cortex Query Language (CQL)
    • Using CQL reports
    • Using JQ in Cortex
  • Workflows
    • Creating a Workflow
      • Workflows as code
    • Blocks
    • Running a Workflow
    • Registering a Scaffolder template
      • Scaffolder advanced usage
    • Using a Workflow to sync in ArgoCD
    • Kicking off a Jenkins pipeline in a Workflow
    • Calling internal service endpoints in a Workflow
  • Plugins
    • Creating a plugin
      • Creating a plugin proxy
    • Migrating Backstage plugins to Cortex
  • Engineering homepage
  • Workspace Settings
    • Using GitOps for Cortex
      • GitOps logs
    • Managing users
      • Roles and permissions
        • Custom roles
        • Team ownership entity editing
      • Configuring SSO
        • Microsoft Entra ID
        • Google
        • Other OIDC providers
        • Okta
          • Okta SCIM
      • Configuring identity mappings
      • Onboarding management
    • API keys, secrets, and tokens
      • Secrets
      • Personal tokens
    • Audit logs
    • Entity settings
      • Data verification
      • Auto archiving entities
    • IP allowlist
    • Notifications
      • Notification logs
    • Customizing your workspace
    • Using search in Cortex
  • Cortex API
    • REST API operations
      • API Keys
      • Audit Logs
      • Catalog Entities
      • Custom Data
        • Custom Data (Advanced)
      • Custom Events
      • Custom Metrics
      • Dependencies
      • Deploys
      • Discovery Audit
      • Docs
      • Eng Intel: User Labels
      • Entity Relationship Types (Beta)
      • Entity Relationships (Beta)
      • Entity Types
      • GitOps Logs
      • Groups
      • Initiatives
      • Integrations APIs
        • Azure Active Directory (Entra ID) API
        • Azure Resources API
        • AWS API
        • Azure DevOps API
        • CircleCI API
        • Coralogix API
        • Datadog API
        • GitHub API
        • GitLab API
        • incident.io API
        • LaunchDarkly API
        • New Relic API
        • PagerDuty API
        • Prometheus API
        • SonarQube API
      • IP Allowlist
      • Notification Logs
      • On call
      • Packages
      • Plugins
      • Queries
      • SCIM
      • Scorecards
      • Secrets
      • Team Hierarchies
      • Teams
      • Workflows
Powered by GitBook
On this page
  • View services
  • Configure the view of your service list
  • Creating services
  • Edit services

Was this helpful?

Export as PDF
  1. Ingesting data into Cortex
  2. Managing Entities
  3. Adding entities

Add services

Last updated 2 months ago

Was this helpful?

Services are a default entity type in Cortex, used for entities such as microservices, libraries, components, etc – essentially any codebase-like module.

View services

To view services, click Catalogs > Services from the main nav.

When you open the Services page, you'll see tabs labeled Mine and All, which denote services you own and all services visible to you in your Cortex workspace.

Configure the view of your service list

At the top of your services list, you can choose how the list is displayed:

  • Name: Click Name, then choose whether to sort by name or identifier, and whether the sort order should be ascending or descending.

  • Display: Click Display, then choose whether to display hierarchies, whether to show archived, and which columns to display.

Creating services

You can create services:

  • By importing them from a connected integration

  • Manually in the Cortex UI

You can import services directly from third-party integrations:

  1. In Cortex, navigate to Catalogs > All entities, then click Import entities.

  2. Select the integration to import from.

    • If you have a large volume of entites, click Filter in the upper right corner of the results list to select and apply entity type filters.

  3. At the bottom of the page, click Next step.

  4. Edit the details for the entity:

    1. Type: Select Service.

    2. Entity name: Enter a human readable name.

    3. Identifier: This field is auto-populated based on your entity name. It is a unique identifier for your entity. This is also known as the x-cortex-tag.

    4. Description: Enter a description of the entity to help others understand its purpose.

    5. Links: Add links to external documentation, such as runbooks, docs, logs, or custom categories.

    6. On-call: Configure on-call information.

    7. Repository: Select the repository associated with this entity.

  5. Click Confirm import.

To create a service:

  1. In the main nav of Cortex, click Catalogs > Services.

  2. At the top of the Services page, click +Import entities.

  3. Configure the form:

    • Type: Select Service.

    • Entity name: Enter a human readable name.

    • Identifier: This field is auto-populated based on your entity name. It is a unique identifier for your entity. This is also known as the x-cortex-tag.

    • Description: Enter a description of the entity to help others understand its purpose.

    • Owners: Define ownership for your entity. We recommend selecting team owners to keep your ownership information up-to-date through any future personnel changes.

    • Links: Add links to external documentation, such as runbooks, docs, logs, or custom categories.

    • On-call: Configure on-call information.

    • Repository: Select the repository associated with this entity.

  4. When you are finished, click Confirm import at the bottom of the page.

Service entity descriptor

A barebones spec file has the OpenAPI version, along with an info section that contains some basic details.

openapi: 3.0.1
info:
  title: My Service
  description: This is my cool service.
  x-cortex-tag: my-service
  x-cortex-type: service

Required fields

The only required fields under info are the title, x-cortex-tag, and x-cortex-type. The description is optional, but we highly recommend adding descriptions to all of your entities.

Example cortex.yaml for a service

openapi: 3.0.1
info:
  title: Chat Service
  description: Chat service is responsible for handling chat feature.
  x-cortex-tag: chat-service
  x-cortex-type: service
  x-cortex-parents: # parents can be of type domain only
  - tag: notifications-domain
  - tag: support-domain
  x-cortex-groups:
  - python
  x-cortex-owners:
  - type: group
    name: Delta
    provider: OKTA
    description: Delta Team
  x-cortex-slack:
    channels:
    - name: delta-team
      notificationsEnabled: true
      description: This is a description for the delta-team Slack channel # optional
  x-cortex-link:
  - name: Chat ServiceAPI Spec
    type: OPENAPI
    url: ./docs/chat-service-openapi-spec.yaml
  x-cortex-custom-metadata:
    core-service: true
  x-cortex-dependency:
    - tag: authentication-service
    - tag: chat-database
  x-cortex-git:
    github:
      repository: org/chat-service
  x-cortex-oncall:
    pagerduty:
      id: ASDF1234
      type: SCHEDULE
  x-cortex-apm:
    datadog:
      monitors:
        - 12345
  x-cortex-issues:
    jira:
      projects:
        - CS

Edit services

It is possible to edit entities after creating them:

  1. Navigate to the entity's page.

  2. In the upper right corner, click Configure entity.

  3. Make any desired changes.

    • Note: The only field you cannot edit is the identifier.

  4. At the bottom of the screen, click Save changes.

Filter: To narrow the scope of your list, click Filter then select criteria you'd like to filter by.

Via the entity descriptor YAML through

Via the

Choose Import discovered entities.

On the following page, after the integration sync is complete, a list of entities from the integration are displayed. Check the boxes next to any entities you want to import.

Groups: Select your entity.

Owners: Define for your entity. We recommend selecting team owners to keep your ownership information up-to-date through any future personnel changes.

You may see owners that Cortex . You can accept or reject the recommendations.

Parents: Define parent domains. This is where you configure the hierarchy for your entity. These can be visualized in the .

Dependencies: Select entities that this entity depends on. These can be visualized in the .

If you selected more than one entity: After the first entity is configured, click the name of the next entity on the right to navigate to the detail editor for that entity.

Choose Create entities manually.

Groups: Select your entity.

Parents: Define parent domains. This is where you configure the hierarchy for your entity. These can be visualized in the .

Dependencies: Select entities that this entity depends on. These can be visualized in the .

You can create, update, and delete services using the .

GitOps
API
groups to segment
ownership
relationship graph
relationship graph
groups to segment
relationship graph
relationship graph
Cortex API
The services list has tabs for All and Mine.
recommends based on repository activity