bosh-prometheus / bosh_tsdb_exporter

BOSH TSDB Prometheus Exporter
Apache License 2.0
0 stars 1 forks source link

FAQ: is bosh tsdb exporter redundant with bosh exporter #1

Open poblin-orange opened 7 years ago

poblin-orange commented 7 years ago

Is bosh_tsdb exporter usefull when already using bosh exporter ? I think the bosh vms metrics are already collected by bosh exporter

frodenas commented 7 years ago

@poblin-orange This is the first step in a bigger plan not yet finished. There're 2 main reasons why I created this exporter:

1) One of the problems with the bosh_exporter is that it stresses the bosh director by creating new tasks and sometimes hanging it (see https://github.com/cloudfoundry-community/prometheus-boshrelease/issues/43). My plan is to use the bosh_exporter to just get admin info about deployments, releases and vm ips, and use one of the bosh hm plugins to get jobs metrics.

2) In an ideal world, I'd just use the graphite_exporter and use the bosh graphite hm plugin (as I've done at some customer's deployments), but when using Pivotal Ops Manager, the only hm plugin supported is the tsdb plugin. So this exporter is just to fill that hole, being able to get job metrics when using Pivotal Ops Manager.

Hope this clarifies your question. I'll add this explanation to the FAQ.

poblin-orange commented 7 years ago

ok thks @frodenas

benjaminguttmann-avtq commented 6 years ago

@frodenas : Quick question to point 2 you mentioned. If using graphite_exporter and bosh graphite hm plugin you will need at least some patterns for the graphite_exporter, right? Perhaps I should give that a try.

frodenas commented 6 years ago

@benjaminguttmann-avtq This is an example I used before:

graphite_exporter:
  graphite:
    mapping_config: |
      *.*.*.*.system_cpu_sys
      name="bosh_job_cpu_sys"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_healthy
      name="bosh_job_healthy"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_mem_percent
      name="bosh_job_mem_percent"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_mem_kb
      name="bosh_job_mem_kb"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_swap_percent
      name="bosh_job_swap_percent"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_swap_kb
      name="bosh_job_swap_kb"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_cpu_user
      name="bosh_job_cpu_user"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_cpu_wait
      name="bosh_job_cpu_wait"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_load_1m
      name="bosh_job_load_avg01"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_disk_system_percent
      name="bosh_job_system_disk_percent"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_disk_ephemeral_percent
      name="bosh_job_ephemeral_disk_percent"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_disk_persistent_percent
      name="bosh_job_persistent_disk_percent"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_disk_system_inode_percent
      name="bosh_job_system_disk_inode_percent"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_disk_ephemeral_inode_percent
      name="bosh_job_ephemeral_disk_inode_percent"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      *.*.*.*.system_disk_persistent_inode_percent
      name="bosh_job_persistent_disk_inode_percentt"
      bosh_deployment="$1"
      bosh_job_name="$2"
      bosh_job_index="$3"
      bosh_job_id="$3"
      agent_id="$4"

      graphite_last_processed_timestamp_seconds
      name="bosh_last_jobs_scrape_timestamp"
benjaminguttmann-avtq commented 6 years ago

@frodenas : Thank you. Okay, I just enabled it. Am I right that the process unhealthy alerts/dashboards of prometheus release are not working any longer with this setup?

frodenas commented 6 years ago

@benjaminguttmann-avtq Exactly, BOSH health-monitor only returns info about the jobs, but not the processes.