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

Introduce Icinga DB check (like the IDO one) #9417

Merged
merged 24 commits into from
Jun 28, 2022

Commits on Jun 28, 2022

  1. Configuration menu
    Copy the full SHA
    ce994d8 View commit details
    Browse the repository at this point in the history
  2. Introduce IcingaDB::AddKvsToMap()

    Al2Klimov authored and julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    f9155a2 View commit details
    Browse the repository at this point in the history
  3. Remove Icinga DB perfdata from Icinga check

    as the Icinga DB check already yields it.
    Al2Klimov authored and julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    db249b1 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6eebc78 View commit details
    Browse the repository at this point in the history
  5. Icinga DB Check: read performance data string from Redis

    Use the already existing format to pass performance data to Icinga 2 rather
    than some new JSON structure. Has the additional benefit of doing more things
    in Go than in C++.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    437948c View commit details
    Browse the repository at this point in the history
  6. Icinga DB Check: remove *_1sec metrics

    They add no additional information compared to the *_1min values as it's always
    the same value divided by 60 anyways. Adding the actual value from the last
    second makes little sense for realistic values of check_interval.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    dbc8995 View commit details
    Browse the repository at this point in the history
  7. Icinga DB Check: rename keys in heartbeat stream

    In both C++ and Go, the keys are only used as constant strings, so namespacing
    them just adds clutter for the `general:*` keys, therefore remove it.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    2810350 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    153d5ba View commit details
    Browse the repository at this point in the history
  9. Icinga DB Check: fix error message on Redis query error

    Not only XREAD queries are performed, so the previous error message was incorrect.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    3391a23 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    bb3ad13 View commit details
    Browse the repository at this point in the history
  11. Icinga DB Check: replace nested calls to fmax() with std::max()

    Improves readability, even more so after splitting it into separate lines.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    81feecf View commit details
    Browse the repository at this point in the history
  12. Icinga DB Check: clearly state Icinga 2 Redis backlog

    Should make it easier to understand that this refers to Redis queries issued by
    Icinga 2.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    ba67c10 View commit details
    Browse the repository at this point in the history
  13. Icinga DB Check: report history and runtime update backlog separately

    Probably makes little difference for an end-user, but for support and
    development it's great to know which of the two is causing problems.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    df1073b View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    7821399 View commit details
    Browse the repository at this point in the history
  15. Icinga DB Check: rename variables from takes to duration

    Sounds more natural in my opinion and I doubt that many users would get that
    due to the difference between takes/took, this refers to ongoing dumps.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    81aef69 View commit details
    Browse the repository at this point in the history
  16. Icinga DB Check: rename perfdata values

    - Add icinga2_ and icingadb_ prefixes to make clear which component is
      responsible for the value.
    - Rename heartbeat_lag to heartbeat_age, describes it better in my opinion and
      sound a bit less like something that should be as close to zero as possible.
    - Rename redis_dump/database_sync into full_dump/full_sync as this is how these
      operations are refered to in log messages as well.
    - Rename Redis backlog into Redis query backlog, makes it a bit clearer in my
      opinion.
    - Rename runtime_backlog into runtime_update_backlog, as the component in
      Icinga DB is called that way and this naming is also exposed in log messages.
    - Rename dump_config/state/history into config/state/history_dump, makes it
      sound more natural.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    6b6a70b View commit details
    Browse the repository at this point in the history
  17. Icinga DB Check: remove markdown headings from output

    icingadb-web shows multiple lines from the check output collapsed into a single
    line. The lines containing just minuses make this look cluttered and making
    making it a heading provides little to no benefit. Even when rendering markdown
    in the check output at some point, having the lists labeled using normal
    paragraphs would look just fine.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    7b16c85 View commit details
    Browse the repository at this point in the history
  18. Icinga DB Check: fix race-condition with IcingaDB::Start()

    IcingaDB::GetConnection() uses IcingaDB::m_Rcon which is only initialized in
    IcingaDB::Start(), therefore add a nullptr check to the check command.
    Additionally, as m_Rcon is potentially accessed concurrently, add a copy of the
    value that is safe for concurrent use.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    899f5d1 View commit details
    Browse the repository at this point in the history
  19. Icinga DB Check: update not connected message

    The check makes no attempt to explicitly connect to Redis, it uses the
    connection of the IcingaDB feature, so this message better describes the state
    in this situation.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    7593207 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    a452d8c View commit details
    Browse the repository at this point in the history
  21. Icinga DB Check: rename dump/sync related perfdata values

    Scope all values using current/last instead of takes/took.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    679e13c View commit details
    Browse the repository at this point in the history
  22. Icinga DB Check: include ongoing dumps in OK message

    Also use the "current" and "full dump/sync" terminology in the other messages.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    9cfde09 View commit details
    Browse the repository at this point in the history
  23. Icinga DB Check: ignore suppressed queries in Redis backlog check

    If some kind of query is not supposed to be processed at the moment, there is
    little point in checking it. During a full dump, state updates are suppressed
    (i.e. delayed), so when a dump takes very long, this would have resulted in a
    false Redis backlog warning.
    julianbrost committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    0649a9d View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    ce81485 View commit details
    Browse the repository at this point in the history