meshcloud

meshcloud

  • User Docs
  • Operator Docs
  • API Docs
  • Release Notes
  • Help

›System

Architecture

  • Overview
  • Identity Federation
  • Platforms & Locations

Metering & Billing

  • Architecture
  • Configuration

System

  • Managed Service
  • Configuration
  • Authorization
  • User Revocation
  • Logging & Auditing
  • Metrics & Monitoring
  • meshStack APIs
  • Managing Tags
  • meshCustomer Group Synchronisation

Amazon Web Services

  • Integration
  • Landing Zones
  • Metering

Microsoft Azure

  • Integration Guide
  • Landing Zones
  • Metering
  • Cloud Inventory
  • Configuration Reference

Google Cloud Platform

  • Integration
  • Landing Zones
  • Metering

Cloud Foundry

  • Integration
  • Metering

Kubernetes

  • Integration
  • Metering

OpenShift

  • Integration
  • Landing Zones
  • Metering

OpenStack

  • Integration
  • VMware Integrated OpenStack
  • Metering

meshMarketplace

  • Integration
  • Marketplace Development
  • Metering
  • Tutorial: Implement a Broker
  • Tutorial: Dashboards
  • meshcloud OSB API Profile
  • Metrics-based Metering
Edit

Metrics & Monitoring

In addition to Logging & Auditing, meshStack supports metric monitoring of production deployments using Prometheus. Our managed service team relies on this monitoring to operate meshStack installations.

Prometheus Scraping

Prometheus scrapes metrics from nodes as well as from all meshStack configuration. Scraping is secured using HTTPS Basic auth. The credentials are managed as part of the deployment.

Additional Alert Inboxes

meshStack comes with pre-configured alerting rules. These alerts are typically only addressed to our managed service team, but can also be sent to additional alert inboxes if required.

These email inboxes be configured in the meshStack configuration model under monitor as follows:

{
, additionalAlertAddresses = [ "alerts@example.com" ]
}

Health endpoint

meshStack configures a health endpoint which returns the current status and also the status of database connections. These information are available under path /actuator/health.

Example:

{
    "status": "UP",
    "components": {
        "db": {
            "status": "UP",
            "details": {
                "database": "MariaDB",
                "result": 1,
                "validationQuery": "SELECT 1"
            }
        }
    }
}

Uptime

meshStack configures an uptime endpoint to request the exact process instance uptime. This information is available under path /actuator/metrics/process.uptime.

Example:

{
    "name": "process.uptime",
    "description": "The uptime of the Java virtual machine",
    "baseUnit": "seconds",
    "measurements": [
        {
            "statistic": "VALUE",
            "value": 2396.331
        }
    ],
    "availableTags": []
}

Version

meshStack configures a version endpoint to request the current version and commit-hash. This information is available under path <meshPanel>/version.

Example:

{
    "package": "7.7.7",
    "git": "123456789a",
    "branch": "HEAD"
}

Sonar

meshStack includes a component called Sonar that runs live smoke tests in your meshStack implementation. These smoke test simulate real end-to-end user interactions with meshStack via the external API. These tests also include end-to-end interaction with meshPlatforms like tenant replication.

Setting up Sonar requires a meshCustomer and meshProject as well as a technical user in meshIdB. Depending on the Enterprise IdP and IAM configuration in your meshStack implementation this setup may not be possible.

Configuration

Sonar can be configured in the meshStack configuration model under monitor.sonar as follows:

Dhall Type
{ scopes : List SonarScope }

The following configuration options are available at mesh.sonar.scope:

Dhall Type
Example
let SonarScope =
{-
username:
The username of a technical user in meshIdB

password:
The password of a technical user in meshIdB

customer:
Identifier of a meshCustomer to test against

projects:
A list of projects - each project holds a projectName and a list of targets

projectName:
The identifier of a meshProject to test against

targets:
A list of targets to scan - each target holds a platformName and a url

platformName:
The identifier of a meshPlatform

url:
meshTenant `/access` URL
-}

{ username : Text
, password : Secret.Type
, customer : Text
, projects :
List
{ projectName : Text
, targets : List { platformName : Text, url : Text }
}
}
let example =
{ username = "username@example.com"
, password = Secret.fromEnv "PASSWORD"
, customer = "example-customer"
, projects =
[ { projectName = "p0"
, targets =
[ { platformName = "p0-platform0"
, url =
"https//<meshfed-fqdn>/projects/<p0-identifier>/locations/<locationID>/platformInstances/<platform0-identifier>/access"
}
, { platformName = "p0-platform1"
, url =
"https//<meshfed-fqdn>/projects/<p0-identifier>/locations/<locationID>/platformInstances/<platform1-identifier>/access"
}
]
}
, { projectName = "p1"
, targets =
[ { platformName = "p1-platform0"
, url =
"https//<meshfed-fqdn>/projects/<p1-identifier>/locations/<locationID>/platformInstances/<platform0-identifier>/access"
}
]
}
]
}
: SonarScope
Last updated on 11/26/2020
← Logging & AuditingmeshStack APIs →
  • Prometheus Scraping
  • Additional Alert Inboxes
  • Health endpoint
  • Uptime
  • Version
  • Sonar
    • Configuration
meshcloud
Docs
User DocumentationOperator Documentation
Community & Follow us
TwitterFacebookLinkedInXING
More
Release NotesGitHub
Copyright © 2021 meshcloud GmbH