LogoLogo
StackState.comDownloadSupportExplore playground
StackState v5.1
StackState v5.1
  • Welcome to the StackState docs!
  • StackState self-hosted v5.1 docs
  • Getting Started
  • 🚀Setup
    • Install StackState
      • Requirements
      • Kubernetes / OpenShift
        • Kubernetes install
        • OpenShift install
        • Required Permissions
        • Non-high availability setup
        • Override default configuration
        • Configure storage
        • Configure Ingress
        • Install from custom image registry
        • Migrate from Linux install
      • Linux
        • Before you install
        • Download
        • Install StackState
        • Install with production configuration
        • Install with development configuration
        • Install with POC configuration
        • Set up a reverse proxy
        • Set up TLS without reverse proxy
      • Initial run guide
      • Troubleshooting
    • Upgrade StackState
      • Steps to upgrade
      • Version specific upgrade instructions
      • StackPack versions
      • StackState release notes
    • StackState Agent
      • About StackState Agent V3
      • Docker
      • Kubernetes / OpenShift
      • Linux
      • Windows
      • Advanced Agent configuration
      • Use an HTTP/HTTPS proxy
      • Agent V1 (legacy)
      • Migrate Agent V1 to Agent V2
        • Linux
        • Docker
    • StackState CLI
      • CLI: sts
      • CLI: stac (deprecated)
      • Comparison between CLIs
    • Data management
      • Backup and Restore
        • Kubernetes backup
        • Linux backup
        • Configuration backup
      • Data retention
      • Clear stored data
  • 👤Use
    • Concepts
      • The 4T data model
      • Components
      • Relations
      • Health state
      • Layers, Domains and Environments
      • Perspectives
      • Anomaly detection
      • StackState architecture
    • StackState UI
      • Explore mode
      • Filters
      • Views
        • About views
        • Configure the view health
        • Create and edit views
        • Visualization settings
      • Perspectives
        • Topology Perspective
        • Events Perspective
        • Traces Perspective
        • Metrics Perspective
      • Timeline and time travel
      • Analytics
      • Keyboard shortcuts
    • Checks and monitors
      • Checks
      • Add a health check
      • Anomaly health checks
      • Monitors
      • Manage monitors
    • Problem analysis
      • About problems
      • Problem lifecycle
      • Investigate a problem
      • Problem notifications
    • Metrics
      • Telemetry streams
      • Golden signals
      • Top metrics
      • Add a telemetry stream
      • Browse telemetry
      • Set telemetry stream priority
    • Events
      • About events
      • Event notifications
      • Manage event handlers
    • Glossary
  • 🧩StackPacks
    • About StackPacks
    • Add-ons
      • Autonomous Anomaly Detector
      • Health Forecast
    • Integrations
      • About integrations
      • 💠StackState Agent V2
      • 💠AWS
        • AWS
        • AWS ECS
        • AWS X-ray
        • StackState/Agent IAM role: EC2
        • StackState/Agent IAM role: EKS
        • Policies for AWS
        • AWS (legacy)
        • Migrate AWS (legacy) to AWS
      • 💠Dynatrace
      • 💠Kubernetes
      • 💠OpenShift
      • 💠OpenTelemetry
        • About instrumentations
        • AWS NodeJS Instrumentation
        • Manual Instrumentation
          • Prerequisites
          • Tracer and span mappings
          • Relations between components
          • Span health state
          • Merging components
          • Code examples
      • 💠ServiceNow
      • 💠Slack
      • 💠Splunk
        • Splunk
        • Splunk Events
        • Splunk Health
        • Splunk Metrics
        • Splunk Topology
      • 💠VMWare vSphere
      • Apache Tomcat
      • Azure
      • Cloudera
      • Custom Synchronization
      • DotNet APM
      • Elasticsearch
      • Humio
      • Java APM
      • JMX
      • Logz.io
      • MySQL
      • Nagios
      • OpenMetrics
      • PostgreSQL
      • Prometheus
      • SAP
      • SCOM
      • SolarWinds
      • Static Health
      • Static Topology
      • Traefik
      • WMI
      • Zabbix
    • Develop your own StackPacks
  • 🔧Configure
    • Topology
      • Component actions
      • Identifiers
      • Topology naming guide
      • Topology sources
      • Create a topology manually
      • Configure topology synchronizations
      • Enable email event notifications
      • Send topology data over HTTP
      • Set the topology filtering limit
      • Use a proxy for event handlers
      • Use tags
      • Tune topology synchronization
      • Debug topology synchronization
    • Telemetry
      • Add telemetry during topology synchronization
      • Data sources
        • Elasticsearch
        • Prometheus mirror
      • Send events over HTTP
      • Send metrics data over HTTP
      • Set the default telemetry interval
      • Debug telemetry synchronization
    • Traces
      • Set up traces
      • Advanced configuration for traces
    • Health
      • Health synchronization
      • Send health data over HTTP
        • Send health data
        • Repeat Snapshots JSON
        • Repeat States JSON
        • Transactional Increments JSON
      • Debug health synchronization
    • Anomaly Detection
      • Export anomaly feedback
      • Scale the AAD up and down
      • The AAD status UI
    • Security
      • Authentication
        • Authentication options
        • File based
        • LDAP
        • Open ID Connect (OIDC)
        • KeyCloak
        • Service tokens
      • RBAC
        • Role-based Access Control
        • Permissions
        • Roles
        • Scopes
        • Subjects
      • Secrets management
      • Self-signed certificates
      • Set up a security backend for Linux
      • Set up a security backend for Windows
    • Logging
      • Kubernetes logs
      • Linux logs
      • Enable logging for functions
  • 📖Develop
    • Developer guides
      • Agent checks
        • About Agent checks
        • Agent check API
        • Agent check state
        • How to develop Agent checks
        • Connect an Agent check to StackState
      • Custom functions and scripts
        • StackState functions
        • Check functions
        • Component actions
        • Event handler functions
        • ID extractor functions
        • Mapping functions
        • Monitor functions
        • Propagation functions
        • Template functions
        • View health state configuration functions
      • Custom Synchronization StackPack
        • About the Custom Synchronization StackPack
        • How to customize elements created by the Custom Synchronization StackPack
        • How to configure a custom synchronization
      • Integrate external services
      • Mirroring Telemetry
      • Monitors
        • Create monitors
        • Monitor STJ file format
      • StackPack development
        • How to create a StackPack
        • Packaging
        • How to get a template file
        • How to make a multi-instance StackPack
        • Prepare a multi-instance provisioning script
        • Upload a StackPack file
        • Prepare a shared template
        • Customize a StackPack
        • Prepare instance template files
        • Prepare a StackPack provisioning script
        • Resources in a StackPack
        • StackState Common Layer
      • Synchronizations and templated files
    • Reference
      • StackState OpenAPI docs
      • StackState Template JSON (STJ)
        • Using STJ
        • Template functions
      • StackState Markup Language (STML)
        • Using STML
        • STML Tags
      • StackState Query Language (STQL)
      • StackState Scripting Language (STSL)
        • Scripting in StackState
        • Script result: Async
        • Script result: Streaming
        • Time in scripts
        • Script APIs
          • Async - script API
          • Component - script API
          • HTTP - script API
          • Prediction - script API
          • StackPack - script API
          • Telemetry - script API
          • Time - script API
          • Topology - script API
          • UI - script API
          • View - script API
    • Tutorials
      • Create a simple StackPack
      • Push data to StackState from an external system
      • Send events to StackState from an external system
      • Set up a mirror to pull telemetry data from an external system
Powered by GitBook
LogoLogo

Legal notices

  • Privacy
  • Cookies
  • Responsible disclosure
  • SOC 2/SOC 3
On this page
  • Overview
  • Setup
  • Prerequisites
  • Install
  • Configure
  • Status
  • Integration status
  • API connectivity (API integration only)
  • Integration details
  • REST API endpoints
  • Data retrieved
  • Open source
  • Troubleshooting
  • Uninstall
  • Release notes
  • See also
  1. StackPacks
  2. Integrations

SCOM

StackState Self-hosted v5.1.x

PreviousSAPNextSolarWinds

Last updated 1 year ago

Overview

The SCOM StackPack is used to create a near real time synchronisation with your SCOM instance. The SCOM integration can be configured to run as either an API integration or PowerShell integration, these are described in the tabs below the diagram.

SCOM is a .

API integration

The StackState SCOM API integration sends requests to the SCOM API to retrieve topology data and events.

  • Topology data and events for the configured criteria are retrieved from SCOM.

  • StackState translates incoming SCOM topology data into components and relations. Incoming events are used to determine component health state and publish SCOM alerts in StackState.

When to choose API integration

The SCOM API integration produces a clean topology in StackState by allowing you to specify the topology to collect. You can run the SCOM check from any StackState Agent V3 as long as it can connect to both the SCOM API and StackState.

Retrieving a large topology can require a high number of API requests, this can take time and may place some stress on your SCOM system. The size of topology you can retrieve may also be limited by the number of requests possible. To avoid this, use the SCOM PowerShell integration.

PowerShell integration

The StackState SCOM PowerShell integration runs PowerShell scripts on the SCOM box to retrieve topology data and events.

  • PowerShell scripts in Agent V3 collect topology data and events from SCOM.

  • StackState translates incoming SCOM topology data into components and relations. Incoming events are used to determine component health state and publish SCOM alerts in StackState.

When to choose PowerShell integration

The PowerShell integration retrieves all SCOM topology data quickly without placing strain on your SCOM system. As a result, there is no limit on the size of topology that can be retrieved.

The PowerShell integration scripts must be run by an instance of StackState Agent V3 installed on the same box as SCOM and will always retrieve all topology data. This might be undesirable or confusing when viewed in StackState. If you would like to specify a criteria for the data to be retrieved or need to run the integration from a StackState Agent installed elsewhere, you should use the SCOM API integration.

Setup

Prerequisites

To set up the StackState SCOM API integration, you need to have:

  • A running SCOM instance (version 1806 or 2019).

  • A SCOM user with the role Operations Manager Read-Only Operators.

To set up the StackState SCOM PowerShell integration, you need to have:

  • A running SCOM instance (version 1806 or 2019).

Install

Install the SCOM StackPack from the StackState UI StackPacks > Integrations screen. You will need to enter the following details:

  • SCOM Instance URL: the SCOM instance URL from which topology need to be collected.

Configure

To enable the SCOM check and begin collecting data from SCOM, add the following configuration to StackState Agent V3:

  1. Edit the Agent integration configuration file /etc/stackstate-agent/conf.d/scom.d/conf.yaml to include details of your SCOM instance:

    • hostip - SCOM IP.

    • domain - active directory domain where the SCOM is located.

    • username

    • auth_mode - Network or Windows (Default is Network).

    • integration mode - to use the API integration, set to api.

    • init_config:
        
        
      instances:
      # run every minute
      - # min_collection_interval: 60 # use in place of collection_interval for Agent V2.14.x or earlier 
        collection_interval: 60
        hostip: localhost
        domain: stackstate
        username: <username>
        password: <password>
        auth_mode: Network
        integration_mode: api    # can be api or powershell, default api
        max_number_of_requests: 10000   # default 10000
        criteria : "(FullName LIKE 'Microsoft.Windows.Computer:%')" # an Operations Manager Data Query

Specify the components to retrieve data for

criteria : “(FullName LIKE ‘Microsoft.Windows.Computer:%’)”
2020-11-05 09:19:31 GMT | ERROR | ... | (scom2.py:114) | Invalid criteria :The property FullNsame is not valid for the given criteria.

Determine the required number of API requests

Use the script below to determine the number of components that match a criteria query and the number of dependencies. Add these numbers together and multiply by 2 to find the required number of API requests to retrieve topology data from SCOM. Two API requests are required to retrieve data for each component and each dependency.

$components = (Get-SCOMManagementGroup).GetMonitoringObjects("FullName LIKE 'Microsoft.Windows.Computer:%'")
"total number of components that match criteria: "+$components.count 
$deps= ($components.GetRelatedMonitoringObjects('Recursive')).count
"Total number of dependencies: "+ $deps

As two API requests are required to retrieve data for each component and each dependency, the configured max_number_of_requests must be higher than the returned total number of components that match criteria AND total number of dependencies multiplied by 2.

To enable the SCOM check and begin collecting data from SCOM, add the following configuration to StackState Agent V3 running on the same box as your SCOM instance:

  1. Edit the Agent integration configuration file /etc/stackstate-agent/conf.d/scom.d/conf.yaml to include details of your SCOM instance:

    • integration mode - to use the PowerShell integration, set to powershell.

      init_config:
        # run every minute
        # min_collection_interval: 60 # use in place of collection_interval for Agent V2.14.x or earlier 
        collection_interval: 60
      instances:
      - integration_mode: powershell    # api or powershell, default api

Status

Integration status

To check the status of the SCOM integration, run the status subcommand and look for SCOM under Running Checks:

sudo stackstate-agent status

API connectivity (API integration only)

(scom.py:118) | Connection Status Code 200

Integration details

REST API endpoints

Retrieving topology data from SCOM requires 2 API requests per component.

API endpoint
Description

OperationsManager/data/scomObjects

Get type of component.

OperationsManager/data/objectInformation

Get component information and relations.

OperationsManager/data/alert

Get alerts.

Data retrieved

Events

Alerts and Health state from SCOM are available in StackState as events.

Data
Description

Alerts

The following alert fields are retrieved: id, name, monitoringobjectdisplayname, description, resolutionstate, timeadded, monitoringobjectpath.

Health state

The component health state retrieved from SCOM is used to determine component health in StackState: Healthy = green Warning = orange Critical = red Not monitored, Out of contact or Maintenance mode = gray

Metrics

The SCOM check doesn't retrieve any metrics data.

Topology

Retrieved topology data is visible in the StackState UI SCOM view, named *SCOM.* .

  • Components

  • Relations

Traces

The SCOM check doesn't retrieve any traces data.

Open source

Troubleshooting

Uninstall

To uninstall the SCOM StackPack and disable the SCOM check:

  1. Go to the StackState UI StackPacks > Integrations > SCOM screen and click UNINSTALL.

    • All SCOM specific configuration will be removed from StackState.

  2. Remove or rename the Agent integration configuration file, for example:

     mv scom.d/conf.yaml scom.d/conf.yaml.bak

Release notes

SCOM StackPack v2.1.1 (2021-04-12)

  • Improvement: Common bumped from 2.5.0 to 2.5.1

See also

connects to the configured .

Agent V3 pushes to StackState.

Agent V3 pushes to StackState.

must be installed on any machine that can connect to both SCOM and StackState.

must be installed on the same machine running SCOM.

password - use to store passwords outside of the configuration file.

max_number_of_requests - The maximum number of requests that should be sent to the SCOM API. See how to , default 10000.

criteria - A query to .

to apply the configuration changes.

The components to retrieve data for can be defined using an . For example, to retrieve data for all Microsoft Windows computers:

Errors in the configured criteria query will be reported in the .

to apply the configuration changes.

To check connectivity between StackState Agent V3 and the SCOM API, open the and search for the SCOM Connection Status Code. Connection status is reported as an HTTP status code - 200 is a good connection, other codes show a problem with connectivity.

The code for the StackState SCOM check is open source and available on GitHub at:

Troubleshooting steps for any known issues can be found in the .

to apply the configuration changes.

🧩
StackState Agent V3
StackState Agent V3
secrets management
Operations Manager Data Query (learn.microsoft.com)
StackState Agent log file
StackState Agent log file
https://github.com/StackVista/stackstate-agent-integrations/tree/master/scom
StackState support Knowledge base
StackState Agent V3
Secrets management in StackState
StackState Agent integrations - SCOM (github.com)
Operations Manager API reference (learn.microsoft.com)
Using Operations Manager data queries (learn.microsoft.com)
SCOM API
retrieved data
retrieved data
determine the required number of API requests
specify the components to retrieve data for
StackState curated integration
Restart StackState Agent V3
Restart StackState Agent V3
Restart StackState Agent V3
Data flow