profile
viewpoint

brian-brazil/benchmarks 4

Random benchmarks

brian-brazil/cloudwatch_exporter 1

Metrics exporter for Amazon AWS CloudWatch

brian-brazil/exporter_exporter 1

A reverse proxy designed for Prometheus exporters

brian-brazil/ansible 0

Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy. Avoid writing scripts or custom code to deploy and update your applications— automate in a language that approaches plain English, using SSH, with no agents to install on remote systems.

brian-brazil/ansible-modules-extras 0

Ansible extra modules - these modules ship with ansible

brian-brazil/aurora 0

Mirror of Apache Aurora

brian-brazil/autotrimp 0

helper script for trimps.github.io

brian-brazil/awakened-poe-trade 0

:heavy_dollar_sign: :hammer: Path of Exile trading app for price checking

brian-brazil/cadvisor 0

Analyzes resource usage and performance characteristics of running containers.

brian-brazil/chroot-plugin 0

A Jenkins plugin which adds support for disposable chroot environments, which can be very usefull for C and C++ projects.

issue commentprometheus/alertmanager

prometheus dont support use labels of rule in annotations?

Hi @szediktam, I've got the same issues as yours, would you mind sharing some information about this? Did you solve it by some configurations, or whatever?

szediktam

comment created time in 6 minutes

pull request commentprometheus/procfs

proc/sys/kernel: adds support for parsing core_pattern

@SuperQ It does seem trivial tbh. On the other hand, when I was looking for such a functionality recently, I was certain It would be something I'd find in this project. Writing a wrapper is fine with me and in fact, I was a bit skeptic about adding this myself and opened an issue(#342) beforehand to clear this up. cc: @discordianfish

danishprakash

comment created time in 33 minutes

issue commentprometheus/prometheus

Proposal: Completely remove series after deleting and cleaning

@roidelapluie We're seeing the same behaviour. I deleted the series but it still pops up in the suggestion box.

trallnag

comment created time in an hour

pull request commentprometheus/prometheus

CNAME responses can occur with "Type: A" dns_sd_config requests

Looks like all tests passed, and the proper text was updated, @brian-brazil. Please let me know if there's anything further needed on this PR.

mattberther

comment created time in 2 hours

issue openedprometheus/prometheus

Prometheus raise out of bounds error for all target after resume the system from a suspend

What did you do?

After suspend the system and resume again, prometheus report following error and can not scrape any new metrics, unless restart the Prometheus service.

What did you expect to see?

promtheus should continue to scrape new metrics.

What did you see instead? Under which circumstances?

check the log above. and in the webui, i got following

image

Environment

  • System information:
Linux t470p 5.4.79-1-lts #1 SMP Sun, 22 Nov 2020 14:22:21 +0000 x86_64 GNU/Linux
  • Prometheus version:
prometheus, version 2.22.2 (branch: tarball, revision: 2.22.2)
  build user:       someone@builder
  build date:       20201117-18:44:08
  go version:       go1.15.5
  platform:         linux/amd64
# prometheus.service

# /usr/lib/systemd/system/prometheus.service
[Unit]
Description=Prometheus service
Requires=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Restart=on-failure
WorkingDirectory=/usr/share/prometheus
EnvironmentFile=-/etc/conf.d/prometheus
ExecStart=/usr/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/prometheus/dat>
ExecReload=/bin/kill -HUP $MAINPID
LimitNOFILE=65535
NoNewPrivileges=true
ProtectHome=true
ProtectSystem=full
ProtectHostname=true
ProtectControlGroups=true
ProtectKernelModules=true
ProtectKernelTunables=true
LockPersonality=true
RestrictRealtime=yes
RestrictNamespaces=yes
MemoryDenyWriteExecute=yes
PrivateDevices=yes
CapabilityBoundingSet=

[Install]
WantedBy=multi-user.target

# /etc/systemd/system/prometheus.service.d/prometheus.conf
[Service]
ExecStart=
ExecStart=/usr/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/home/prometheus $PROME>
ProtectHome=False
  • Prometheus configuration file:
---
global:
  scrape_interval: 300s
  evaluation_interval: 10s

alerting:
  alertmanagers:
    - static_configs:
        - targets:
            - localhost:9093
scrape_configs:
  - job_name: 'node_exporter'
    static_configs:
      - targets:
          - localhost:9100
        labels:
          uid: t470
  • Logs:
Dec 01 09:46:29 t470p prometheus[1629652]: level=info ts=2020-12-01T01:46:29.714Z caller=head.go:889 component=tsdb msg="WAL checkpoint complete" first=1668 last=1669 duration=32.511167ms
Dec 01 09:46:29 t470p prometheus[1629652]: level=info ts=2020-12-01T01:46:29.763Z caller=head.go:809 component=tsdb msg="Head GC completed" duration=739.34µs
Dec 01 09:46:29 t470p prometheus[1629652]: level=info ts=2020-12-01T01:46:29.812Z caller=head.go:809 component=tsdb msg="Head GC completed" duration=802.06µs
Dec 01 09:46:29 t470p prometheus[1629652]: level=info ts=2020-12-01T01:46:29.812Z caller=checkpoint.go:96 component=tsdb msg="Creating checkpoint" from_segment=1670 to_segment=1671 mint=1606780800000
Dec 01 09:46:29 t470p prometheus[1629652]: level=info ts=2020-12-01T01:46:29.822Z caller=head.go:889 component=tsdb msg="WAL checkpoint complete" first=1670 last=1671 duration=10.152588ms
Dec 01 09:46:47 t470p prometheus[1629652]: level=warn ts=2020-12-01T01:46:47.293Z caller=scrape.go:1378 component="scrape manager" scrape_pool=ssh target="http://127.0.0.1:9115/probe?module=ssh_banner&target=172.20.149.141%3A22" msg="Error on ingesting samples that are too old or are too far into the future" num_dropped=6
Dec 01 09:46:47 t470p prometheus[1629652]: level=warn ts=2020-12-01T01:46:47.293Z caller=scrape.go:1145 component="scrape manager" scrape_pool=ssh target="http://127.0.0.1:9115/probe?module=ssh_banner&target=xxxx%3A22" msg="Append failed" err="out of bounds"
Dec 01 09:46:47 t470p prometheus[1629652]: level=warn ts=2020-12-01T01:46:47.293Z caller=scrape.go:1094 component="scrape manager" scrape_pool=ssh target="http://127.0.0.1:9115/probe?module=ssh_banner&target=xxx%3A22" msg="Appending scrape report failed" err="out of bounds"
Dec 01 09:46:56 t470p prometheus[1629652]: level=warn ts=2020-12-01T01:46:56.162Z caller=scrape.go:1378 component="scrape manager" scrape_pool=blackbox target="http://127.0.0.1:9115/probe?module=http_2xx&target=http%3A%2F%2Fxxx" msg="Error on ingesting samples that are too old or are too far into the future" num_dropped=17
Dec 01 09:46:56 t470p prometheus[1629652]: level=warn ts=2020-12-01T01:46:56.162Z caller=scrape.go:1145 component="scrape manager" scrape_pool=blackbox target="http://127.0.0.1:9115/probe?module=http_2xx&target=http%3A%2F%2Fwww.baidu.com" msg="Append failed" err="out of bounds"
Dec 01 09:46:56 t470p prometheus[1629652]: level=warn ts=2020-12-01T01:46:56.162Z caller=scrape.go:1094 component="scrape manager" scrape_pool=blackbox target="http://127.0.0.1:9115/probe?module=http_2xx&target=http%3A%2F%2Fwww.baidu.com" msg="Appending scrape report failed" err="out of bounds"
Dec 01 09:47:01 t470p prometheus[1629652]: level=warn ts=2020-12-01T01:47:01.836Z caller=scrape.go:1378 component="scrape manager" scrape_pool=gitea target=http://localhost:10080/metrics msg="Error on ingesting samples that are too old or are too far into the future" num_dropped=67
Dec 01 09:47:01 t470p prometheus[1629652]: level=warn ts=2020-12-01T01:47:01.836Z caller=scrape.go:1145 component="scrape manager" scrape_pool=gitea target=http://localhost:10080/metrics msg="Append failed" err="out of bounds"

created time in 3 hours

PR closed prometheus/client_java

Extend DropwizardExports

Dropwizard historgram and meter provides a bit more information that is quite useful like stdDev and precomputed rate for 1m, 5m and 15m.

Let export it also.

+30 -13

2 comments

2 changed files

catap

pr closed time in 3 hours

pull request commentprometheus/client_java

Extend DropwizardExports

@brian-brazil very good point.

catap

comment created time in 3 hours

Pull request review commentprometheus/prometheus

CNAME responses can occur when with "Type: A" dns_sd_config requests

 func (d *Discovery) refreshOne(ctx context.Context, name string, ch chan<- *targ 			target = hostPort(addr.A.String(), d.port) 		case *dns.AAAA: 			target = hostPort(addr.AAAA.String(), d.port)+		case *dns.CNAME:+			// Ignore to prevent warning message from default case.

I misunderstood what you meant by comment- I thought you were referring to the title of the PR. My mistake, I'll get it adjusted.

mattberther

comment created time in 4 hours

pull request commentprometheus/prometheus

CNAME responses can occur when with "Type: A" dns_sd_config requests

@brian-brazil I've made the proposed changes. There seems to be a circleci test that is failing. I'm not expecting that my change of an error message caused the described failure (since the pipeline passed on the initial PR):

Failed
=== RUN   TestHandleMultipleQuitRequests
    web_test.go:492: 
        	Error Trace:	web_test.go:492
        	            				asm_amd64.s:1374
        	Error:      	Received unexpected error:
        	            	Post "http://localhost:9090/-/quit": EOF
        	Test:       	TestHandleMultipleQuitRequests
--- FAIL: TestHandleMultipleQuitRequests (5.01s)

However, I see no way of being able to re-run the workflow (presumably because i do not have write access). Is this something that you can kick off, or is there another way for me to re-run the workflow?

mattberther

comment created time in 4 hours

PR opened prometheus/client_java

Extend DropwizardExports

Dropwizard historgram and meter provides a bit more information that is quite useful like stdDev and precomputed rate for 1m, 5m and 15m.

Let export it also.

+30 -13

0 comment

2 changed files

pr created time in 5 hours

issue closedprometheus/prometheus

Prometheus hangs without log message

What did you do?

$ while curl 10.10.2.4:9090/-/healthy; do date; done
Sun May 31 18:18:11 UTC 2020
Prometheus is Healthy.
Sun May 31 18:18:11 UTC 2020
Prometheus is Healthy.
Sun May 31 18:18:11 UTC 2020
Prometheus is Healthy.
Sun May 31 18:18:29 UTC 2020
Prometheus is Healthy.
Sun May 31 18:18:29 UTC 2020
Prometheus is Healthy.
Sun May 31 18:18:29 UTC 2020

What did you expect to see?

Either a healthy message at least once every 2 seconds or a warning message in the Prometheus logs.

What did you see instead? Under which circumstances?

Prometheus unresponsive, here for 18 seconds, later for over 30 seconds (long enough to get it killed), and nothing in the Prometheus log between "Server is ready to receive web requests" and "Received SIGTERM, exiting gracefully".

Prometheus is idle, with compaction disabled because it is running Thanos sidecar to upload data to S3.

Prometheus has 1 full CPU and 4Gi memory allocated, and no indication it is using more than 1.5Gi or being killed because the node is OOM. This is a quiet cluster with total allocated memory Limits lower than total available memory.

Environment

Prometheus 2.18.1 on Kubernetes 1.15.10 EKS. Running 2 replicas. Both replicas (on separate nodes) exhibiting the same behavior).

  • System information:
$ uname -srm
Linux 4.14.165-133.209.amzn2.x86_64 x86_64
  • Prometheus version:
$ prometheus --version
prometheus, version 2.18.1 (branch: HEAD, revision: ecee9c8abfd118f139014cb1b174b08db3f342cf)
  build user:       root@2117a9e64a7e
  build date:       20200507-16:51:47
  go version:       go1.14.2
  • Prometheus configuration file: <details><summary>Click to reveal</summary>
global:
  evaluation_interval: 30s
  scrape_interval: 30s
  external_labels:
    cluster: test
    prometheus: monitoring/po-prometheus
    prometheus_replica: prometheus-po-prometheus-1

plus jobs and rules from CoreOS Prometheus Operator </details>

  • Prometheus command line args: <details><summary>Click to reveal</summary>
      args:
        - '--web.console.templates=/etc/prometheus/consoles'
        - '--web.console.libraries=/etc/prometheus/console_libraries'
        - '--config.file=/etc/prometheus/config_out/prometheus.env.yaml'
        - '--storage.tsdb.path=/prometheus'
        - '--storage.tsdb.retention.time=7h'
        - '--web.enable-lifecycle'
        - '--storage.tsdb.no-lockfile'
        - '--web.enable-admin-api'
        - '--web.external-url=https://prometheus.redacted.com'
        - '--web.route-prefix=/'
        - '--log.format=json'
        - '--storage.tsdb.max-block-duration=2h'

</details>

  • Logs: <details><summary>Log extract (omissions noted with "snip")</summary>

{"caller":"main.go:337","level":"info","msg":"Starting Prometheus","ts":"2020-05-31T18:45:54.980Z","version":"(version=2.18.1, branch=HEAD, revision=ecee9c8abfd118f139014cb1b174b08db3f342cf)"}
{"build_context":"(go=go1.14.2, user=root@2117a9e64a7e, date=20200507-16:51:47)","caller":"main.go:338","level":"info","ts":"2020-05-31T18:45:54.980Z"}
{"caller":"main.go:339","host_details":"(Linux 4.14.165-133.209.amzn2.x86_64 #1 SMP Sun Feb 9 00:21:30 UTC 2020 x86_64 prometheus-po-prometheus-0 (none))","level":"info","ts":"2020-05-31T18:45:54.980Z"}
{"caller":"main.go:340","fd_limits":"(soft=65536, hard=65536)","level":"info","ts":"2020-05-31T18:45:54.981Z"}
{"caller":"main.go:341","level":"info","ts":"2020-05-31T18:45:54.981Z","vm_limits":"(soft=unlimited, hard=unlimited)"}
{"caller":"query_logger.go:79","component":"activeQueryTracker","level":"info","msg":"These queries didn't finish in prometheus' last run:","queries":"[{\"query\":\"sum(rate(container_network_transmit_bytes_total{pod=~\\\"ingress-nginx-ingress-controller-hffqg\\\",namespace=\\\"kube-system\\\"}[1m])) by (container, namespace)\",\"timestamp_sec\":1590950448},{\"query\":\"sum(kube_pod_container_resource_requests{pod=~\\\"prometheus-po-prometheus-0\\\",resource=\\\"memory\\\",namespace=\\\"monitoring\\\"}) by (container, namespace)\",\"timestamp_sec\":1590950448},{\"query\":\"sum(rate(container_cpu_usage_seconds_total{container!=\\\"POD\\\",container!=\\\"\\\",pod=~\\\"prometheus-po-prometheus-0\\\",namespace=\\\"monitoring\\\"}[1m])) by (container, namespace)\",\"timestamp_sec\":1590950448}]","ts":"2020-05-31T18:45:54.985Z"}
{"caller":"main.go:678","level":"info","msg":"Starting TSDB ...","ts":"2020-05-31T18:45:55.015Z"}

snip

{"caller":"head.go:627","component":"tsdb","duration":"31.459049573s","level":"info","msg":"WAL replay completed","ts":"2020-05-31T18:46:26.704Z"}
{"caller":"main.go:694","fs_type":"NFS_SUPER_MAGIC","level":"info","ts":"2020-05-31T18:46:26.964Z"}
{"caller":"main.go:695","level":"info","msg":"TSDB started","ts":"2020-05-31T18:46:26.964Z"}
{"caller":"main.go:799","filename":"/etc/prometheus/config_out/prometheus.env.yaml","level":"info","msg":"Loading configuration file","ts":"2020-05-31T18:46:26.964Z"}
{"caller":"kubernetes.go:253","component":"discovery manager scrape","discovery":"k8s","level":"info","msg":"Using pod service account via in-cluster config","ts":"2020-05-31T18:46:26.968Z"}
{"caller":"kubernetes.go:253","component":"discovery manager scrape","discovery":"k8s","level":"info","msg":"Using pod service account via in-cluster config","ts":"2020-05-31T18:46:26.970Z"}
{"caller":"kubernetes.go:253","component":"discovery manager scrape","discovery":"k8s","level":"info","msg":"Using pod service account via in-cluster config","ts":"2020-05-31T18:46:26.970Z"}
{"caller":"kubernetes.go:253","component":"discovery manager notify","discovery":"k8s","level":"info","msg":"Using pod service account via in-cluster config","ts":"2020-05-31T18:46:26.971Z"}
{"caller":"main.go:827","filename":"/etc/prometheus/config_out/prometheus.env.yaml","level":"info","msg":"Completed loading of configuration file","ts":"2020-05-31T18:46:27.184Z"}
{"caller":"main.go:646","level":"info","msg":"Server is ready to receive web requests.","ts":"2020-05-31T18:46:27.184Z"}
{"caller":"main.go:524","level":"warn","msg":"Received SIGTERM, exiting gracefully...","ts":"2020-05-31T18:48:26.766Z"}

Turning on debugging, I can see this (the healthy endpoint was unresponsive from 2020-05-31T20:35:25 to 2020-05-31T20:35:57, the SIGTERM coming presumably because the health probe failureThreshold was exceeded):

{"caller":"klog.go:53","component":"k8s_client_runtime","func":"Verbose.Infof","level":"debug","msg":"caches populated","ts":"2020-05-31T20:34:49.570Z"}
{"caller":"scrape.go:962","component":"scrape manager","err":"Get \"http://10.10.15.65:9090/metrics\": context deadline exceeded","level":"debug","msg":"Scrape failed","scrape_pool":"monitoring/po-prometheus/0","target":"http://10.10.15.65:9090/metrics","ts":"2020-05-31T20:35:25.783Z"}
{"alertname":"KubeSchedulerDown","caller":"manager.go:783","component":"rule manager","group":"kubernetes-system-scheduler","labels":"{alertname=\"KubeSchedulerDown\", severity=\"critical\"}","level":"debug","msg":"'for' state restored","restored_time":"Saturday, 30-May-20 11:20:31 UTC","ts":"2020-05-31T20:35:57.170Z"}
{"alertname":"KubeControllerManagerDown","caller":"manager.go:783","component":"rule manager","group":"kubernetes-system-controller-manager","labels":"{alertname=\"KubeControllerManagerDown\", severity=\"critical\"}","level":"debug","msg":"'for' state restored","restored_time":"Saturday, 30-May-20 11:20:05 UTC","ts":"2020-05-31T20:35:57.170Z"}
{"alertname":"KubeVersionMismatch","caller":"manager.go:783","component":"rule manager","group":"kubernetes-system","labels":"{alertname=\"KubeVersionMismatch\", severity=\"warning\"}","level":"debug","msg":"'for' state restored","restored_time":"Saturday, 30-May-20 11:20:14 UTC","ts":"2020-05-31T20:35:57.175Z"}
{"alertname":"TargetDown","caller":"manager.go:783","component":"rule manager","group":"general.rules","labels":"{alertname=\"TargetDown\", job=\"po-prometheus\", namespace=\"monitoring\", service=\"po-prometheus\", severity=\"warning\"}","level":"debug","msg":"'for' state restored","restored_time":"Sunday, 31-May-20 20:35:57 UTC","ts":"2020-05-31T20:35:57.182Z"}
{"alertname":"TargetDown","caller":"manager.go:783","component":"rule manager","group":"general.rules","labels":"{alertname=\"TargetDown\", job=\"kubelet\", namespace=\"kube-system\", service=\"po-kubelet\", severity=\"warning\"}","level":"debug","msg":"'for' state restored","restored_time":"Sunday, 31-May-20 20:35:57 UTC","ts":"2020-05-31T20:35:57.182Z"}
{"alertname":"KubePodCrashLooping","caller":"manager.go:783","component":"rule manager","group":"kubernetes-apps","labels":"{alertname=\"KubePodCrashLooping\", container=\"prometheus\", endpoint=\"http\", instance=\"10.10.17.202:8080\", job=\"kube-state-metrics\", namespace=\"monitoring\", pod=\"prometheus-po-prometheus-1\", service=\"stable-po-kube-state-metrics\", severity=\"critical\"}","level":"debug","msg":"'for' state restored","restored_time":"Sunday, 31-May-20 20:30:57 UTC","ts":"2020-05-31T20:35:57.247Z"}
{"alertname":"KubePodCrashLooping","caller":"manager.go:783","component":"rule manager","group":"kubernetes-apps","labels":"{alertname=\"KubePodCrashLooping\", container=\"prometheus\", endpoint=\"http\", instance=\"10.10.17.202:8080\", job=\"kube-state-metrics\", namespace=\"monitoring\", pod=\"prometheus-po-prometheus-0\", service=\"stable-po-kube-state-metrics\", severity=\"critical\"}","level":"debug","msg":"'for' state restored","restored_time":"Sunday, 31-May-20 20:30:57 UTC","ts":"2020-05-31T20:35:57.247Z"}
{"caller":"main.go:524","level":"warn","msg":"Received SIGTERM, exiting gracefully...","ts":"2020-05-31T20:37:52.433Z"}

</details>

closed time in 7 hours

Nuru

issue commentprometheus/prometheus

Prometheus hangs without log message

I am closing this bug. Please reopen if after upgrading to 2.21 you can reproduce it.

Nuru

comment created time in 7 hours

pull request commentprometheus/node_exporter

Expose zfs zpool state

@SuperQ Hello. Could you please review the PR?

Hexta

comment created time in 7 hours

PR closed prometheus/blackbox_exporter

Do not connect via IP when behind proxy

Problem

My proxy only allows connections to some domains. It therefore needs to see the domain name of the connection in order to let it through. This is specially true for SSL connections, since the Host header gets sent inside the encrypted tunnel.

Proposal

This PR avoids connecting via IP when using proxies. It modifies the HTTP prober to send the domain name in the clear in case any proxy URL is set.

This is an initial approach, of course. I will be happy to iterate this out with the prometheus/blackbox team until we get to an usable version.

+8 -6

1 comment

1 changed file

thiagoarrais

pr closed time in 8 hours

Pull request review commentprometheus/prometheus

Guard closing quitCh with sync.Once to prevent double close

 func (h *Handler) version(w http.ResponseWriter, r *http.Request) { }  func (h *Handler) quit(w http.ResponseWriter, r *http.Request) {-	select {-	case <-h.quitCh:+	var stopped bool+	h.quitOnce.Do(func() {+		stopped = true+		close(h.quitCh)+	})+	if stopped {

This should be the opposite

johejo

comment created time in 9 hours

issue commentprometheus/snmp_exporter

Feature Request: Way to tie ipAdEntAddr to interface metrics

No worries, it's something I can probably just put into a SQL database and query. I'm using the Grafana Cloud Agent, so it doesn't support doing recording rules before they hit Grafana Cloud (and get billed)

loganmc10

comment created time in 10 hours

issue commentprometheus/snmp_exporter

Feature Request: Way to tie ipAdEntAddr to interface metrics

I thought about this a bit, and I agree with Brian. I don't see an easy way to fix this on the exporter side. This is a one-to-many problem, that is more easily solved in PromQL.

One solution, is you could add a recording rule for the PromQL join, and configure your remote_write to drop the raw metrics from being sent to Grafana Cloud.

loganmc10

comment created time in 10 hours

issue commentprometheus/node_exporter

can node_exporter support AIX os?

Interesting, I don't have any idea about static linking in Go/AIX. Again, I have no access to any AIX systems to try any of this on.

We don't have any CGO in the node_exporter for Linux, but we do allow it for other UNIX platforms like the BSDs. You can see the separate .promu-cgo.yml configuration for those platforms.

I don't see a problem with adding AIX CGO to our main codebase.

william-yang

comment created time in 10 hours

pull request commentprometheus/prometheus

Consider status code 429 as recoverable errors to avoid resharding

Ah, I feel like rate limiting is a thing from the remote storage. That means, the remote storage should get more control as to how it wants a particular request to behave. This gives itself the ability to handle the situation and come out of it. So, the response header should be a good way out here.

Harkishen-Singh

comment created time in 10 hours

pull request commentprometheus/prometheus

Consider status code 429 as recoverable errors to avoid resharding

The Retry-After response header may be returned by remote storage to tell the client (remote write) how long to wait before trying another send. It is called out in https://tools.ietf.org/html/rfc6585#section-4.

To be clear, I am not saying implement the Retry-After logic. I am just not sure the 429 behavior should be the exact same as 5XX retry behavior, and would like a discussion. I am curious what @cstyan thinks too.

Harkishen-Singh

comment created time in 10 hours

create barnchprometheus-community/codemirror-promql

branch : feature/matcher-in-client

created branch time in 11 hours

issue closedprometheus/snmp_exporter

Feature Request: Way to tie ipAdEntAddr to interface metrics

<!-- Please note: GitHub issues should only be used for feature requests and bug reports. For general discussions and support, please refer to one of:

- #prometheus on freenode
- the Prometheus Users list: https://groups.google.com/forum/#!forum/prometheus-users

For bug reports, please fill out the below fields and provide as much detail
as possible about your issue.  For feature requests, you may omit the
following template.

If you include CLI output, please run those programs with additional parameters:
	snmp_exporter: `-log.level=debug`
	snmpbulkget etc: `-On`

-->

Host operating system: output of uname -a

Docker container, latest

snmp_exporter version: output of snmp_exporter -version

<!-- If building from source, run make first. -->

Docker container, latest

What device/snmpwalk OID are you using?

ifHCOutOctets, trying to include ipAdEntAddr (1.3.6.1.2.1.4.20.1.1) as a label

What did you see?

I don't think there is currently a way to link ipAdEntAddr as a label to interface stats like ifHCOutOctets. ipAdEntAddr is part of the table ipAddrTable. The index for this table is ipAdEntAddr itself. However the table has an entry called ipAdEntIfIndex, which ties/is equal to the ifIndex value of ifHCOutOctets. I don't currently see a way to link ipAdEntAddr with ifHCOutOctets

closed time in 11 hours

loganmc10

issue commentprometheus/snmp_exporter

Feature Request: Way to tie ipAdEntAddr to interface metrics

I understand it doesn't do it today, that's why I labelled this as a feature request. You're saying it's not possible or not going to ever happen so this can be closed?

loganmc10

comment created time in 12 hours

issue commentprometheus/snmp_exporter

Feature Request: Way to tie ipAdEntAddr to interface metrics

True, although many devices still support it, the same comment applies to the newer ipAddressTable (1.3.6.1.2.1.4.34), it is organized in the same fashion, where the index of that table is the IP address, and the table includes ipAddressIfIndex, which corresponds to the ifIndex of the interface.

So the general problem would still require the same solution.

loganmc10

comment created time in 12 hours

issue commentprometheus/snmp_exporter

Feature Request: Way to tie ipAdEntAddr to interface metrics

FYI: ipAddrTable has been deprecated since 2006.

loganmc10

comment created time in 12 hours

pull request commentprometheus/prometheus

Guard closing quitCh with sync.Once to prevent double close

Thanks good suggestion. I think it's better only Handler.Quit(e.g. from main module) could read quitCh.

johejo

comment created time in 12 hours

pull request commentprometheus/prometheus

Consider status code 429 as recoverable errors to avoid resharding

I didn't get the retry after thing. Is it something that remote storage will respond to the remote write component, a time after which only, it should retry?

Harkishen-Singh

comment created time in 12 hours

issue commentprometheus-community/codemirror-promql

Extend PrometheusClient interface to pass label matchers as arguments

no problem @dsmith3197 :). Ok I will try to help then. Let's see if I'm able to provide a PR in a couple of days

dsmith3197

comment created time in 12 hours

pull request commentprometheus/prometheus

Guard closing quitCh with sync.Once to prevent double close

You could instead revert 8166 and apply to the full function ?

pseudo code

var stopped bool
quitOnce.Do {
 stopped=true
  print(Quitting)
  close(quit)
}
if !stopped {
  print(Exit in progress)
}
johejo

comment created time in 13 hours

more