profile
viewpoint
Bartlomiej Plotka bwplotka Red Hat London, UK https://bwplotka.dev/ Fascinated by challenging engineering problems & distributed systems. Go & OSS fan. Prometheus maintainer, Thanos co-author. CNCF SIG Observability Tech Lead.

bwplotka/bingo 57

Like `go get` but for Go tools! CI Automating versioning of Go binaries in a nested, isolated Go modules.

bwplotka/demo-nav 25

Lightweight shell library for smooth, interactive demos using terminal.

bwplotka/flagarize 11

Flagarize your Go struct to initialize your even complex struct from flags! 🚀

ains/niso 6

An improved Golang OAuth2 server library

bwplotka/docker-mesos-clion 2

Develop Apache Mesos via Clion in docker environment!

bwplotka/docker-dev-intellij 1

Docker image for IntelliJ IDEA Community + GO with GO building/development/testing environment.

bwplotka/edge-detector-gpgu 1

Edge detector - implemented in MPI and OpenCL for academic project.

adrien-f/thanos 0

Highly available Prometheus setup with long term storage capabilities.

bwplotka/alertmanager 0

Prometheus Alertmanager

bwplotka/alertmanager-client-go 0

Go client for https://github.com/prometheus/alertmanager API. Useful for automatic end-to-end tests.

PR opened prometheus/prometheus

UI: Remove useless else-if

That else-if can never be reached.

Signed-off-by: Julien Pivotto roidelapluie@inuits.eu

<!-- Don't forget!

- If the PR adds or changes a behaviour or fixes a bug of an exported API it would need a unit/e2e test.

- Where possible use only exported APIs for tests to simplify the review and make it as close as possible to an actual library usage.

- No tests are needed for internal implementation changes.

- Performance improvements would need a benchmark test to prove it.

- All exposed objects should have a comment.

- All comments should start with a capital letter and end with a full stop.

-->

+0 -2

0 comment

1 changed file

pr created time in 2 hours

GollumEvent

issue commentthanos-io/thanos

Lock for compactors

Hello 👋 Looks like there was no activity on this issue for the last two months. Do you mind updating us on the status? Is this still reproducible or needed? If yes, just comment on this PR or push a commit. Thanks! 🤗 If there will be no activity in the next two weeks, this issue will be closed (we can always reopen an issue if we need!). Alternatively, use remind command if you wish to be reminded at some point in future.

sylr

comment created time in 5 hours

startedgoogle/go-intervals

started time in 10 hours

startedgoogle/minions

started time in 10 hours

startedgoogle/monologue

started time in 10 hours

startedgoogle/triemap

started time in 10 hours

push eventthanos-io/thanos

Paweł Krupa

commit sha 28af4b6003450b31b2a1ab80a54d8bacbc0637ff

mixin/alerts: remove .rules suffix from alert groups (#3542) * mixin/alerts: remove .rules suffix from alert groups Signed-off-by: paulfantom <pawel@krupa.net.pl> * examples/alerts: regenerate Signed-off-by: paulfantom <pawel@krupa.net.pl> * pkg/rules: adjust rule groups in tests Signed-off-by: paulfantom <pawel@krupa.net.pl>

view details

push time in 10 hours

PR merged thanos-io/thanos

mixin/alerts: remove .rules suffix from alert groups

<!-- Keep PR title verbose enough and add prefix telling about what components it touches e.g "query:" or ".*:" -->

<!-- Don't forget about CHANGELOG!

Changelog entry format:
- [#<PR-id>](<PR-URL>) Thanos <Component> ...

<PR-id> Id of your pull request.
<PR-URL> URL of your PR such as https://github.com/thanos-io/thanos/pull/<PR-id>
<Component> Component affected by your changes such as Query, Store, Receive.

-->

  • [ ] I added CHANGELOG entry for this change.
  • [ ] Change is not relevant to the end user.

Changes

<!-- Enumerate changes you made --> Removed .rules suffix from alert groups in thanos mixin. This is similar to how node_exporter handles alert groups.

Verification

<!-- How you tested it? How do you know it works? --> Run make examples and look at output.

Fixes #3347

/cc @kakkoyun

+40 -40

0 comment

11 changed files

paulfantom

pr closed time in 10 hours

issue closedthanos-io/thanos

mixin: alerts and rules using same groupname

<!-- In case of issues related to exact bucket implementation, please ping corresponded maintainer from list here: https://github.com/thanos-io/thanos/blob/master/docs/storage.md -->

Thanos, Prometheus and Golang version used:

mixin folder coming from the master branch.

What happened:

Prometheus is complaining thanos-query.rules, thanos-receive.rules, thanos-store.rules and thanos-bucket-replicate.rules group names are repeated in the same file.

What you expected to happen:

That alerts and rules mixins can be imported with prometheus-operator/kube-prometheus.

How to reproduce it (as minimally and precisely as possible):

Import thanos rules and alerts mixins with prometheus-operator/kube-prometheus deployment.

<details>jsonnetfile.json <p>

{
  "version": 1,
  "dependencies": [
    {
      "source": {
        "git": {
          "remote": "https://github.com/prometheus-operator/kube-prometheus.git",
          "subdir": "jsonnet/kube-prometheus"
        }
      },
      "version": "master"
    },
    {
      "source": {
        "git": {
          "remote": "https://github.com/thanos-io/thanos.git",
          "subdir": "mixin"
        }
      },
      "version": "master",
      "name": "thanos-mixin"
    }
  ],
  "legacyImports": true
}

</p> </details>

<details>kube-prometheus.jsonnet <p>

local kp =
  (import 'kube-prometheus/kube-prometheus.libsonnet') +
  (import 'kube-prometheus/kube-prometheus-all-namespaces.libsonnet') +
  // Uncomment the following imports to enable its patches
  (import 'kube-prometheus/kube-prometheus-anti-affinity.libsonnet') +
  (import 'kube-prometheus/kube-prometheus-managed-cluster.libsonnet') +
  // (import 'kube-prometheus/kube-prometheus-node-ports.libsonnet') +
  // (import 'kube-prometheus/kube-prometheus-static-etcd.libsonnet') +
  (import 'kube-prometheus/kube-prometheus-thanos-sidecar.libsonnet') +
  (import 'kube-prometheus/kube-prometheus-custom-metrics.libsonnet') +
  // prometheusAlertsFilter + prometheusAlertsUpdate +
  {
    _config+:: {
      namespace: 'monitoring',

      versions+:: {
        alertmanager: "v0.21.0",
        nodeExporter: "v1.0.1",
        kubeStateMetrics: "1.9.7",
        prometheusOperator: "v0.42.1",
        prometheus: "v2.22.0",
        grafana: '7.2.1',
        thanos: 'v0.16.0-rc.1',
      },
      ...
    },
    ...
    prometheusRules+:: 
      (import 'thanos-mixin/rules.jsonnet') +
      {
        // groups+: [],
      },
    prometheusAlerts+:: 
      (import 'thanos-mixin/alerts.jsonnet') +
      {
        // cat existingrule.yaml | gojsontoyaml -yamltojson > existingrule.json
        // groups+: (import 'existingrule.json').groups,
      },
  };

</p> </details>

Full logs to relevant components:

<details>Logs <p>

level=error ts=2020-10-21T10:50:54.930Z caller=manager.go:946 component="rule manager" msg="loading groups failed" err="/etc/prometheus/rules/prometheus-k8s-rulefiles-0/monitoring-prometheus-k8s-rules.yaml: 2142:3: groupname: \"thanos-query.rules\" is repeated in the same file"
level=error ts=2020-10-21T10:50:54.930Z caller=manager.go:946 component="rule manager" msg="loading groups failed" err="/etc/prometheus/rules/prometheus-k8s-rulefiles-0/monitoring-prometheus-k8s-rules.yaml: 2236:3: groupname: \"thanos-receive.rules\" is repeated in the same file"
level=error ts=2020-10-21T10:50:54.930Z caller=manager.go:946 component="rule manager" msg="loading groups failed" err="/etc/prometheus/rules/prometheus-k8s-rulefiles-0/monitoring-prometheus-k8s-rules.yaml: 2352:3: groupname: \"thanos-store.rules\" is repeated in the same file"
level=error ts=2020-10-21T10:50:54.930Z caller=manager.go:946 component="rule manager" msg="loading groups failed" err="/etc/prometheus/rules/prometheus-k8s-rulefiles-0/monitoring-prometheus-k8s-rules.yaml: 2592:3: groupname: \"thanos-bucket-replicate.rules\" is repeated in the same file"
level=error ts=2020-10-21T10:50:54.930Z caller=main.go:881 msg="Failed to apply configuration" err="error loading rules, previous rule set restored"

</p> </details>

Anything else we need to know:

closed time in 10 hours

sdurrheimer

startedgoogle/gnostic-grpc

started time in 10 hours

startedgoogle/martian

started time in 10 hours

startedgoogle/jsonapi

started time in 10 hours

startedgoogle/addlicense

started time in 10 hours

startedgoogle/gnostic-go-generator

started time in 10 hours

startedgoogle/alertmanager-irc-relay

started time in 10 hours

startedgoogle/go-licenses

started time in 10 hours

startedgoogle/ts-bridge

started time in 10 hours

startedgoogle/nixery

started time in 11 hours

startedgoogle/readahead

started time in 11 hours

startedgoogle/truestreet

started time in 11 hours

PR opened thanos-io/thanos

mixin/alerts: remove .rules suffix from alert groups

<!-- Keep PR title verbose enough and add prefix telling about what components it touches e.g "query:" or ".*:" -->

<!-- Don't forget about CHANGELOG!

Changelog entry format:
- [#<PR-id>](<PR-URL>) Thanos <Component> ...

<PR-id> Id of your pull request.
<PR-URL> URL of your PR such as https://github.com/thanos-io/thanos/pull/<PR-id>
<Component> Component affected by your changes such as Query, Store, Receive.

-->

  • [ ] I added CHANGELOG entry for this change.
  • [ ] Change is not relevant to the end user.

Changes

<!-- Enumerate changes you made --> Removed .rules suffix from alert groups in thanos mixin. This is similar to how node_exporter handles alert groups.

Verification

<!-- How you tested it? How do you know it works? --> Run make examples and look at output.

Fixes #3347

/cc @kakkoyun

+32 -32

0 comment

10 changed files

pr created time in 13 hours

issue openedthanos-io/thanos

Incorporate new improvements from upstream in the React UI

In past few months there have been a sizable amount of UI related improvemnts in the upstream Prometheus code. A lot of those improvements make sense for Thanos as well.

Here's a list of PRs (in no specific order) that I think we should take a look at:

  • [ ] Fix styling bug for target labels with special names. prometheus/prometheus#7902
  • [ ] Remove the need of pathPrefix in the React UI. prometheus/prometheus#7979
  • [ ] Add key to StatusWithStatusIndicator component in loop. prometheus/prometheus#6879
  • [ ] Fix react UI bug with series going on and off. prometheus/prometheus#7804
  • [ ] Support new duration format in graph range input. prometheus/prometheus#7833
  • [ ] Fix detail swatch glitch. prometheus/prometheus#7805
  • [ ] Fix button display when there is no panels. prometheus/prometheus#8155
  • [ ] Make React UI the default, keep old UI under /classic. prometheus/prometheus#8142 (Related to #3111)
  • [ ] React UI: Change "metrics autocomplete" with "autocomplete". prometheus/prometheus#8174

Most of these are pretty straightforward and small changes and should be easy for first time contributors.

created time in 14 hours

issue commentthanos-io/thanos

thanos-compact should exit on critical error

Hello 👋 Looks like there was no activity on this issue for the last two months. Do you mind updating us on the status? Is this still reproducible or needed? If yes, just comment on this PR or push a commit. Thanks! 🤗 If there will be no activity in the next two weeks, this issue will be closed (we can always reopen an issue if we need!). Alternatively, use remind command if you wish to be reminded at some point in future.

belm0

comment created time in 16 hours

PR closed thanos-io/thanos

React-ui: Display statistics in Block viewer stale

<!-- Keep PR title verbose enough and add prefix telling about what components it touches e.g "query:" or ".*:" --> Related to #3112 <!-- Don't forget about CHANGELOG!

Changelog entry format:
- [#<PR-id>](<PR-URL>) Thanos <Component> ...

<PR-id> Id of your pull request.
<PR-URL> URL of your PR such as https://github.com/thanos-io/thanos/pull/<PR-id>
<Component> Component affected by your changes such as Query, Store, Receive.

-->

  • [ ] I added CHANGELOG entry for this change.
  • [ ] Change is not relevant to the end user.

Changes

<!-- Enumerate changes you made --> Display refreshedAt, total blocks, and blocks in each group in the Block viewer

Verification

<!-- How you tested it? How do you know it works? --> Checked it in the browser

+188 -162

3 comments

5 changed files

daksh-sagar

pr closed time in 16 hours

issue commentthanos-io/thanos

Incorrect comment in DNS provider

The comment is still incorrect.

bboreham

comment created time in 16 hours

Pull request review commentthanos-io/thanos

Added stats for Blocks #3112

 import React, { FC } from 'react'; import { Block, BlocksPool } from './block'; import { BlockSpan } from './BlockSpan'; import styles from './blocks.module.css';+import { Popup } from 'semantic-ui-react';

Use https://reactstrap.github.io/components/tooltips/ as we already use Reactstrap all over.

kunal-kushwaha

comment created time in 16 hours

Pull request review commentthanos-io/thanos

Added stats for Blocks #3112

     "tempusdominus-bootstrap-4": "^5.1.2",     "tempusdominus-core": "^5.0.3",     "typescript": "^3.3.3",-    "use-query-params": "^1.1.6"+    "use-query-params": "^1.1.6",+    "semantic-ui-react": "^2.0.1"

Using a high level UI library just for tooltips is a bit too much. It will increase the bundle size by a lot too.

We are already using Reactstrap all over. Use https://reactstrap.github.io/components/tooltips/

kunal-kushwaha

comment created time in 16 hours

issue commentthanos-io/thanos

Shipping sourcemaps for the React UI in production

I checked and that'll reduce the size difference by quite a lot (about under 500KB). But I am not sure if it'll give us much value in return. If we don't include sourcemaps for a vast majority of code, we will not have proper stacktraces for a vast amount of crashes. Any thoughts on this?

prmsrswt

comment created time in 16 hours

pull request commentprometheus/prometheus

Consider status code 429 as recoverable errors to avoid resharding

Ah, any suggestions on how we should move ahead here?

Harkishen-Singh

comment created time in 19 hours

more