👁️
pierreinside
  • Introduction
  • Workbench
    • VirtualBox
    • Linux
      • Linux-Paketverwaltung
      • Linux Initialisierung
      • Ubuntu 14.10 LTS
      • Ubuntu 16.04 LTS
      • Ubuntu 18.04 LTS
      • Ubuntu 20.04 LTS
      • Ubuntu - Netzwerk
    • Konsole
      • ssh
      • zsh
      • cygwin
      • Babun
      • terminator
      • Terminal Multiplexer
      • Linux Tools
    • awesome
    • Entwicklungsumgebungen
      • Texteditors
      • Visual Studio Code
      • IntelliJ - IDEA
  • Softwareentwicklungsprozess
    • Schätzungen
    • Eventstorming
    • OKR
  • Architektur
    • Uncle Bob
    • Microservices
    • NoSQL
      • ElasticSearch
    • Hystrix
    • Reactive Programming
    • AngularJS
    • Service Mesh
  • Networking
    • Dependency Injection
  • Programming
    • Java Core/EE
      • Java 8
      • Java Annotationen
      • Bean Validation
      • Enterprise Java Beans Specification
      • Dependency Injection
    • JRebel
    • Webservices
      • HTTP
      • REST
      • Spring MVC REST
      • Swagger
      • Postman
    • Spring Ecosystem
      • Spring Core
      • Spring Boot
        • Programming
        • Production Ready
        • Testing
      • Spring Cloud
      • Spring Cloud Config
      • Spring MVC
      • Spring Data
      • Spring Petclinic
    • NodeJS
    • UI-Technologie
      • Thymeleaf
      • ionic
      • Web Fonts
      • Jinja Templates
      • Twitter Bootstrap
    • Python Ecosystem
      • Python Libraries
      • Python Testing
      • Python Best-Practices
      • Python Snippets
      • Python Selenium
      • Kivy UI
      • FastAPI
      • Typer CLI
      • Django
    • Groovy
    • Persistenz
      • Transactions
        • Java TX
        • JPA TX
      • TX Handling
      • JPA
        • Eclipse Link
      • MySQL
        • MySQL Performance
        • Docker MySQL
      • Hazelcast
    • Glassfish
    • YAML
    • Angular
    • Camel
    • Zeichenkodierung
    • Kinder lernen Programmieren
  • Testen
    • Easymock
    • Mockito
  • Performance & Scalability
    • Java Performance
      • Heapdump Analysis
    • Java Concurrency
    • Instana
  • Sicherheit
    • Authentifizierung
      • OpenID Connect
      • Web-Authentication API
    • Authorisierung
      • OAuth
      • SAML
    • Spring Security
    • Zertifikate
    • Kali Linux
    • VPN
    • Zero-Trust-Networks
  • Build und Deployment
    • Maven
    • Bamboo
    • Jenkins
      • Jenkins Pipelines
      • Jenkins Pipelines Tips und Tricks
      • Jenkins-configuration-as-Code
      • Jenkins IDE
    • Travis CI
    • Shellprogrammierung
      • jq - JSON Parsing
    • Konfiguration Management
    • Vagrant
      • Vagrant-Ansible-Integration
      • Vagrant Box bauen
    • Ansible
      • Getting Started
      • Ansible Details
    • Saltstack
    • LinuxKit
    • Container
      • Docker
        • Docker Getting Started
        • Debugging Docker
        • Docker Build
        • Docker Registry
        • Docker run
          • docker run
          • docker network
        • Docker Compose
        • docker machine
        • Docker@Windows
        • Docker Host
        • Docker Scaling
        • Docker Ressources
        • Docker Logging
        • windowsContainer
      • Cloud Deployment Provider
        • AWS
          • Anwendungsdeployment
          • Workload
          • Permissions
          • Netzwerke
          • AWS CLI
            • aws-vault
          • RDS
          • Static Website Hosting
          • EKS - Elastic Kubernetes Service
          • S3
        • Google Cloud Platform
      • Docker Orchestrierung
        • CoreOS
        • Kubernetes
          • microK8s
          • minikube
          • autoscaler
          • Docker
          • k9s
        • Nomad
    • PHP
  • Operations
    • Proxy
      • NGINX
    • DNS
    • Logging
      • Graylog
      • Fluentd
    • Monitoring
      • Grafana
    • Infrastructure-as-Code
      • Terraform
        • AWS-Provider
        • GitHub-Provider
      • Packer
    • Deployment
      • Vault
      • Consul
        • Consul Template
      • Fabio
  • Rechtliches
    • Software-Lizenzen
  • Git Ecosystem
    • Git
      • Git Lifecycle Hooks
    • GitHub
      • GitHub Organizations
    • GitHub Actions
    • GitHub Pages
    • GitHub CLI
    • GitHub Copilot
    • GitHub-AWS OIDC
    • GitBook
    • GitLab
    • Bitbucket/Stash
  • Publishing
    • WordPress
    • Markdown
    • Static Site Generators
      • Hugo
      • Jekyll
    • Tiddly Wiki
    • Leanpub
    • Animationsfilme
  • Storage
    • Synology 2012
    • Synology 2021
  • Collaboration
    • Übersicht
    • Microsoft Teams
  • Konferenzen
    • Velocity Berlin 2019
  • IT mit Kindern
    • Projekt Sportstracker
    • Scratch
    • Pico Spielekonsole
  • Schule
    • Mathematik
  • Misc
    • Foto/Video
      • Foto/Video Sammlung bis 2023
        • Handbrake
        • Onedrive
      • Foto/Video Sammlung ab 2024
      • Gopro
      • Panasonic FZ1000 ii
        • als Webcam
      • AV Receiver
      • Videos erstellen
        • OBS Studio
        • Touch Portal
        • Game-Streaming
      • Kameratasche
      • Kamera 2020
    • Handy
      • 2016
      • 2018
      • 2019
      • 2021
      • 2022
    • Computer
      • Laptop
        • 2018
        • Chromebook
      • Monitor
        • 4k
      • Software
        • Command Line Interface
        • Google API
        • Plant UML
        • Chromium
        • Passwort-Manager
        • GPG
      • Dell CNF 2665 Farbdrucker
      • Dockingstation
      • Gaming PC 2021
      • Mobiles Büro
      • Mobiles Internet
      • Mobiler Router
    • Beamer Benq W1000+
    • Spielekonsole
      • 2017
        • Playstation 4
      • Pico Spielekonsole
    • Gadgets
      • iPad Pro 2015 und 2016
      • iPad Air 2024
      • Macbook Pro
      • Smartwatch
      • Slate
      • Mudi
    • Fahrrad
      • Jonas 2018
      • SQLab
    • Auto
      • Auto 2022
      • Camping
        • Camping Touren Ideen
          • Camping Tour - Gardasee 2021
        • Camper
          • Camper klein - keine Stehhöhe
            • VW Bus Erfahrungen
          • Camper gross - Stehhöhe
    • Haus
      • Klimaanlage
      • Swimming Pool
      • Quick Mill Orione 3000
      • Spülmaschine 2021
      • Hebe-Schiebetür
      • Gasgrill
      • Minibar / Mini-Kühlschrank
      • Glasfaseranschluss (Fiber-to-the-Home)
      • Smart-Home
        • Raspberry Pi
        • Heimnetzwerk
      • Homeoffice
      • Energie
        • Solar
        • Wärmepumpe
    • Freizeit
      • Musik Streaming
      • Sky
      • Online Lernplattformen
      • eScooter - ePowerFun
    • Fußball
      • Meine Arbeit als Fußball-Trainer
      • Fußball Tools
      • DFB Talentförderung
    • Google Impact Challenge
  • Englisch
Powered by GitBook
On this page
  • Konzepte
  • Dashboard
  • Panel
  • Versionskontrolle
  • Kiosk-Mode
  • Variablen
  • JSON-Definition
  • Snapshot
  • Transformationen
  • Annotate Events
  • Instana-Dashboards
  • Instana Plugin für Grafana
  • Background Infos
  • Panel-Definition

Was this helpful?

  1. Operations
  2. Monitoring

Grafana

Mit Grafana lassen sich schöne Dashboards fürs Monitoring von Metriken erstellen. Datenbasis sind i. a. Time-Series-Databases, die eine hohe Abtastrate (im Sekundenbereich) haben.

ACHTUNG: arbeitet man mit Werten, die eine sehr niedrige Auflösung haben (geringe Abtastrate), dann kann es schon mal irritieren, weil die Graphen vielleicht seltsam aussehen. In dem Fall sollte man den Rollup entsprechend vergößern, um seltsame Artefakte zu verhindern. Beispiel: schreibt man alle 30 Minuten einen einzelnen Wert weg und verwendet einen Rollup von Sekunden, dann kann es dazu führen, daß mehrere Punkte sichtbar sind ... auch wenn es nur ein einziger Wert war - liegt daran, daß eigentlich mit einem Kurvenverlauf gerechnet wird und Interpolation verwendet wird, um die Kurve stetig zu machen. Bei einer hohen Abtastrate würde diese Eigenart nie auffallen.

Die Y-Werte sind für mich kaum nachvollziehbar ... auch wenn ich Werte im gleichen Y-Bereich darstelle, ändert sich der Y-Achsen-Wertebereich teilweise dramatisch, wenn ich die zeitliche Ausdehnung des Graphen verändere (z. B. von 1h auf 7 Tage). Unter der Annahme, daß alle Werte zwischen 500.000ms und 1.000.000ms liegen, hätte ich gehofft, daß die y-Achse IMMER von 0 bis 1.000.000ms geht ... ist aber leider ganz anders und so kann ich mit den Werten gar nicht soviel anfangen ... ich sehe eigentlich nur, daß die Werte schwanken und viel oder wenig ... aber der absolute Wert ist nicht zu gebrauchen. Meine Vorstellung war, daß Ich konnte mir das nicht erklären und habe folgende Erklärungsversuche gefunden:

  • Y Axis values change depending on time range


Konzepte

Dashboard

Sammlung von Panels. Panels können interaktiv sein, d. h. man wählt

  • Variablenbelegung

  • Zeitraum

Panel

Ein Panel stellt die eigentliche Information dar, z. B. ein Graph oder eine Tabelle. In diesem Panel lassen sich mehrere Queries übereinanderlegen. Eine Query allerdings kann sogar dafür sorgen, daß mehrere Graphen aus unterschiedlichen Quellen/Instanzen (z. B. Hosts) stammen (wirkte auf mich zunächst mal wie Magie).

Versionskontrolle

Bei der Editierung von Dashboards (und der darin befindlichen Panels) über das Web-UI kann man beim Speichern eine "Commit-Message" angeben. Versionen lassen sich vergleichen und wiederherstellen.

Kiosk-Mode

Dieser Modus ist für Überwachungsmonitore geeignet, bei denen die Ansichten rollierend wechseln.

Variablen

Man kann Dashboard-spezifische Variablen definieren und dann in der Definition der Panels verwenden. Im Dashboard lassen sich dann einzelne/mehrere/alle Werte der Variablen in den Panels gleichzeitig anzeigen. So lassen sich die Werte sehr gut miteinander vergleichen.

JSON-Definition

Die Dashboards können als JSON-File exportiert und importiert werden. Auf diese Weise lassen sich Dashboards unter eine externe Versionskontrolle stellen (z. B. git) und Grafana-Server from-scratch aufsetzen.

Snapshot

Mit einem Snapshot kann man einen (festen) Zeitausschnitt per (Deep-) Link an andere verschicken oder einfach abspeichern.

Transformationen

Die Raw-Werte aus der angezapften Data-Source lassen sich vor der Visualisierung im Grafana-Dashboard noch aufbereiten.

"Transformations allow you to join, calculate, re-order, hide and rename your query results before being visualized. Many transforms are not suitable if your using the Graph visualization as it currently only supports time series."

Annotate Events

Die Panels in den Dashboards lassen sich mit Anmerkungen versehen - auf diese Weise lassen sich Analyseergebnisse gut teilen.


Instana-Dashboards

  • unterstützte Features

  • Instana Plugin für Grafana - Source Code

Grafana kann Instana als DataSource einbinden (hierzu braucht es dann einen API-Token) und auf diese Weise lassen sich Daten aus Instana (Build-In Metriken und Custom-Metriken) schön übersichtlicht mit zeitlichem Verlauf auflisten. Instana bietet zwar schon einiges an zeitlicher grafischer Aufbereitung, doch für Custom-Metriken (z. B. aufgezeichnet über Statsd oder die REST-API) ist Grafana das Mittel der Wahl.

ACHTUNG: die Möglichkeiten der Visualisierung hängt auch von der Data-Source ab ...

Instana Plugin für Grafana

Für die Integration von Instana in Grafana sind folgende Dinge notwendig:

  • Erzeugung eines API-Tokens in Instana

  • Installation des Instana Plugins

  • Konfiguration des Instana Plugins mit

    • Instana-Server-URL

    • API-Token mit den notwendigen Permissions

Background Infos

  • Instana-Plugin verwendet die Instana-REST-API

    • sehr praktisch, wenn man wissen will wie man die Instana-REST-API benutzt

Panel-Definition

  • basieren auf Dynamic Focus Queries

  • erlaubt Auto-Completion

PreviousMonitoringNextInfrastructure-as-Code

Last updated 3 years ago

Was this helpful?