Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Metricbeat] Create PostgreSQL dashboard #13103

Closed
sayden opened this issue Jul 30, 2019 · 9 comments · Fixed by #13187
Closed

[Metricbeat] Create PostgreSQL dashboard #13103

sayden opened this issue Jul 30, 2019 · 9 comments · Fixed by #13187
Assignees
Labels
candidate Candidate to be added to the current iteration enhancement Metricbeat Metricbeat Team:Integrations Label for the Integrations team

Comments

@sayden
Copy link
Contributor

sayden commented Jul 30, 2019

Very self descriptive. Requested here #10594

I considered to include the following fields (grouped by visualization):

- name: database
  - name: transactions.commit
    description: Number of transactions in this database that have been committed.
  - name: transactions.rollback
    description: Number of transactions in this database that have been rolled back.

  - name: blocks.hit
    description: >
      Number of times disk blocks were found already in the buffer cache, so
      that a read was not necessary (this only includes hits in the PostgreSQL
      buffer cache, not the operating system's file system cache).

  - name: blocks.time.read.ms
    description: Time spent reading data file blocks by backends in this database, in milliseconds.
  - name: blocks.time.write.ms
    description: Time spent writing data file blocks by backends in this database, in milliseconds.

  - name: rows.returned
    description: Number of rows returned by queries in this database.
  - name: rows.fetched
    description: Number of rows fetched by queries in this database.

  - name: rows.inserted
    description: Number of rows inserted by queries in this database.
  - name: rows.updated
    description: Number of rows updated by queries in this database.
  - name: rows.deleted
    description: Number of rows deleted by queries in this database.

  - name: conflicts
    description: Number of queries canceled due to conflicts with recovery in this database.
  - name: deadlocks
    description: Number of deadlocks detected in this database.

- name: statement
  - name: query.calls
    description: Number of times the query has been run.
  - name: query.rows
    description: Total number of rows returned by query.

  - name: query.time.total.ms
    description: Total number of milliseconds spent running query.
  - name: query.time.min.ms
    description: Minimum number of milliseconds spent running query.
  - name: query.time.max.ms
    description: Maximum number of milliseconds spent running query.
  - name: query.time.mean.ms
    description: Mean number of milliseconds spent running query.

  - name: query.memory.shared.hit
    description: Total number of shared block cache hits by the query.
  - name: query.memory.shared.read
    description: Total number of shared block cache read by the query.

  - name: query.memory.local.hit
    description: Total number of local block cache hits by the query.
  - name: query.memory.local.read
    description: Total number of local block cache read by the query.

Total 6 visualizations for database metricset and 4 of statement.

@sayden sayden added enhancement Metricbeat Metricbeat Team:Integrations Label for the Integrations team labels Jul 30, 2019
@sayden sayden self-assigned this Jul 30, 2019
@exekias exekias added the candidate Candidate to be added to the current iteration label Jul 31, 2019
@jsoriano
Copy link
Member

jsoriano commented Aug 5, 2019

There was a PostgreSQL dashboard by @dov0211 that was ready to be merged after updating the branch: #7734

@sorantis
Copy link
Contributor

sorantis commented Aug 5, 2019

@sayden, based on (some of) the proposed grouping, I made this dashboard:

Screen Shot 2019-08-05 at 19 45 16

Let me know if you want to add anything else to it.

@Matt-Yorkley
Copy link

@sorantis I think the "rows fetched vs. rows returned" metric should be a graph rather than a bar chart. Example:

fetched

@Matt-Yorkley
Copy link

Matt-Yorkley commented Aug 7, 2019

It looks like the (abandoned?) PR #7734 made a start on views for the statement metricset:

statements

LGTM as a layout for visualising the statement metrics in general, and specifically it covers the first half of:

  - name: query.calls
    description: Number of times the query has been run.
  - name: query.rows
    description: Total number of rows returned by query.

@sorantis
Copy link
Contributor

sorantis commented Aug 7, 2019

@Matt-Yorkley thanks for the feedback. I've changed the "Rows fetched/received" to a graph and added the query.calls Top N graph.
Screen Shot 2019-08-07 at 13 48 20

@kcpinnaka
Copy link

@sorantis , thanks for providing dashboards for postgres, may i know when this will be available for public ? looks like latest 7.3.0 doesnt include this.

@sorantis
Copy link
Contributor

sorantis commented Sep 9, 2019

@kcpinnaka The pr got merged after the 7.3.0 cut. Should be part of the next release.

@kcpinnaka
Copy link

@sorantis,
since i am planning a demo of ELK stack which includes postgres performace ,
may i know when will the next release gets out?

@surendra-s-Dru
Copy link

surendra-s-Dru commented Jan 31, 2023

H I am not getting query latency & top quires graph even i have added statement in metricebat in my DB server can anyone help me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
candidate Candidate to be added to the current iteration enhancement Metricbeat Metricbeat Team:Integrations Label for the Integrations team
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants