Branch: refs/heads/master
Home: https://github.com/Checkmk/checkmk
Commit: 048bed2a5342bdbd13d890e24343fcfc5b4611f5
https://github.com/Checkmk/checkmk/commit/048bed2a5342bdbd13d890e24343fcfc5…
Author: Lars Michelsen <lm(a)checkmk.com>
Date: 2024-08-09 (Fri, 09 Aug 2024)
Changed paths:
A .werks/16565.md
Log Message:
-----------
16565 Introduce distributed tracing of Checkmk
With this change, we aim to improve our capabilities as Checkmk developers to
understand the performance and behavior of Checkmk in a distributed environment
better. This will help us to identify issues and bottlenecks and improve the
performance of Checkmk in the future. Besides logging, metrics and profiling, it
is another tool which gives us great insights.
This change does is not meant as a new user feature, e.g. to do distributed
tracing of another software with Checkmk. Nevertheless, we feel it makes sense
to document it here so that you are aware of it when you see the new related
configuration options.
Developers can get easier and better insights into complex and large scale
production and test environments of Checkmk.
1. The solution shall be usable in a production environment without major
performance impact.
2. No extra complex setup, such as installation of software in addition to
Checkmk, shall be required for the traces to be captured and visualized.
3. The solution shall capture execution steps and collect timing information of
them.
4. For each invocation of these program flows a supporter can visualize traces
including the nested spans across components.
5. The data can be visualized right in the production environment.
We use OpenTelemetry as the underlying technology for distributed tracing. The
Checkmk applications are instrumented to send traces. Those traces are sent to a
collector, which is running in every Checkmk site or just in the central site,
in case of a distributed Checkmk environment. This collector is Jaeger, which is
a popular open-source distributed tracing tool. The traces are stored in memory
and can be viewed in the Jaeger UI.
Sending and receiving traces is configured through `omd config`. The two options
`TRACE_RECEIVE` and `TRACE_SEND` are used to enable or disable the receiving and
seonding of traces.
The `TRACE_RECEIVE` option will tell the Checkmk applications to send traces via
OTLP to a collector, which can be the local Jaeger instance or any other OTLP
collector of your choices.
The option `TRACE_SEND` enables the sites local Jaeger instance. The site apache
enables the exposure of the Jaeger UI via `http://checkmkhost/site_id/jaeger/`.
If you have just one site and want to enable tracing, set TRACE_RECEIVE to `on`.
Secondly set `TRACE_SEND` to on and set `TRACE_SEND_TARGET` to `local_site`.
Then start your site again. You can now access the Jaeger UI via the URL
`http://checkmkhost/site_id/jaeger/`. After a few seconds you should see the
first traces in the UI.
In a distributed setup, you would enable `TRACE_RECEIVE` on the central site and
`TRACE_SEND` on all other sites and point `TRACE_SEND_TARGET` to the central
sites collector (`TRACE_RECEIVE_ADDRESS:TRACE_RECEIVE_PORT`).
Even if tracing is not much overhead locally, and of course some overhead in the
distributed setup, because the traces need to be sent to the central site, we
recommend to enable tracing only when you need it and disable it again when you
don't need it anymore.
Change-Id: I953f91f1f6adf8792bcecbffb64ea6206553f2da
Commit: 0b1e53f4034898efd6a87360d049c0e09e4fdf2b
https://github.com/Checkmk/checkmk/commit/0b1e53f4034898efd6a87360d049c0e09…
Author: Max Linke <max.linke(a)checkmk.com>
Date: 2024-08-09 (Fri, 09 Aug 2024)
Changed paths:
M pyproject.toml
Log Message:
-----------
ignore opentelemetry pkg-resource warning
Change-Id: I16e42c2cb7b896e2bd365533d6d1a7c76bbf6c91
Compare: https://github.com/Checkmk/checkmk/compare/0b395dacac48...0b1e53f40348
To unsubscribe from these emails, change your notification settings at https://github.com/Checkmk/checkmk/settings/notifications
Branch: refs/heads/master
Home: https://github.com/Checkmk/checkmk
Commit: 0b395dacac4877ab1d06353bef9672f0c8601171
https://github.com/Checkmk/checkmk/commit/0b395dacac4877ab1d06353bef9672f0c…
Author: Moritz Kiemer <moritz.kiemer(a)checkmk.com>
Date: 2024-08-09 (Fri, 09 Aug 2024)
Changed paths:
M cmk/base/config.py
M tests/unit/cmk/base/test_config.py
Log Message:
-----------
lecay checks: refactoring
This prepares to create the migrated checks without
putting them in a global registry one day.
Change-Id: I69b56a5105bf6828e21fd9a3a24ab8852f36dadd
To unsubscribe from these emails, change your notification settings at https://github.com/Checkmk/checkmk/settings/notifications
Branch: refs/heads/master
Home: https://github.com/Checkmk/checkmk
Commit: 17e13a060d38e292fe5e32863aea0205336902dc
https://github.com/Checkmk/checkmk/commit/17e13a060d38e292fe5e32863aea02053…
Author: Moritz Kiemer <moritz.kiemer(a)checkmk.com>
Date: 2024-08-09 (Fri, 09 Aug 2024)
Changed paths:
M cmk/base/core_nagios/__init__.py
M cmk/base/core_nagios/_create_config.py
M cmk/base/core_nagios/_precompile_host_checks.py
M tests/unit/cmk/base/test_core_nagios.py
Log Message:
-----------
core nagios: pass more values as arguments
This passes a few more configuration parameters as
arguments instead of directly accessing the global
variables.
In particular this includes the ones that are only
properly initialized if all plugins have been loaded.
Clearly this could be extended further, but we don't
need these options in the CMC case.
In particular: It would be worth while to find a way
that allows us to *not* load all the check plugins
in the CMC case; they are not needed there.
Change-Id: I94e7f1aff9720c66ed0db266c2a1e67c4eebb05c
To unsubscribe from these emails, change your notification settings at https://github.com/Checkmk/checkmk/settings/notifications
Branch: refs/heads/master
Home: https://github.com/Checkmk/checkmk
Commit: 4fd6781c280aeca545805c6e944103d14435dd44
https://github.com/Checkmk/checkmk/commit/4fd6781c280aeca545805c6e944103d14…
Author: Moritz Kiemer <moritz.kiemer(a)checkmk.com>
Date: 2024-08-09 (Fri, 09 Aug 2024)
Changed paths:
M cmk/plugins/lib/esx_vsphere.py
M cmk/plugins/vsphere/agent_based/esx_vsphere_snapshot.py
M cmk/plugins/vsphere/agent_based/esx_vsphere_vm.py
M cmk/plugins/vsphere/agent_based/esx_vsphere_vm_cpu.py
M cmk/plugins/vsphere/agent_based/esx_vsphere_vm_datastores.py
M cmk/plugins/vsphere/agent_based/esx_vsphere_vm_guest_tools.py
M cmk/plugins/vsphere/agent_based/esx_vsphere_vm_heartbeat.py
M cmk/plugins/vsphere/agent_based/esx_vsphere_vm_mem_usage.py
M cmk/plugins/vsphere/agent_based/esx_vsphere_vm_name.py
M cmk/plugins/vsphere/agent_based/esx_vsphere_vm_running_on.py
M tests/unit/cmk/plugins/vsphere/agent_based/esx_vsphere_vm_util.py
M tests/unit/cmk/plugins/vsphere/agent_based/test_esx_vsphere_snapshots.py
M tests/unit/cmk/plugins/vsphere/agent_based/test_esx_vsphere_vm_cpu.py
M tests/unit/cmk/plugins/vsphere/agent_based/test_esx_vsphere_vm_datastores.py
M tests/unit/cmk/plugins/vsphere/agent_based/test_esx_vsphere_vm_guest_tools.py
M tests/unit/cmk/plugins/vsphere/agent_based/test_esx_vsphere_vm_heartbeat.py
M tests/unit/cmk/plugins/vsphere/agent_based/test_esx_vsphere_vm_mem_usage.py
M tests/unit/cmk/plugins/vsphere/agent_based/test_esx_vsphere_vm_name.py
M tests/unit/cmk/plugins/vsphere/agent_based/test_esx_vsphere_vm_running_on.py
Log Message:
-----------
fix ESX VM section typing
The plugin will never be called if the section is None,
so it is important to not include the case in the
section type.
Change-Id: Ib1098ff348df572fa35f0deb1717533456d961e3
To unsubscribe from these emails, change your notification settings at https://github.com/Checkmk/checkmk/settings/notifications
Branch: refs/heads/master
Home: https://github.com/Checkmk/checkmk
Commit: 0207bc5606e5c471e389eb67f5a223cce96ea7ce
https://github.com/Checkmk/checkmk/commit/0207bc5606e5c471e389eb67f5a223cce…
Author: Leonardo Petrora <leonardo.petrora(a)checkmk.com>
Date: 2024-08-09 (Fri, 09 Aug 2024)
Changed paths:
M packages/cmk-frontend-vue/src/components/quick-setup/QuickSetup.vue
M packages/cmk-frontend-vue/src/components/quick-setup/QuickSetupStage.vue
M packages/cmk-frontend-vue/src/components/quick-setup/quick_setup_types.ts
M packages/cmk-frontend-vue/src/components/quick-setup/rest_api.ts
M packages/cmk-frontend-vue/src/components/quick-setup/rest_api_types.ts
M packages/cmk-frontend-vue/src/components/quick-setup/widgets/CollapsibleWidget.vue
M packages/cmk-frontend-vue/src/constants/rest_api.ts
Log Message:
-----------
Last step, save and redirect
Change-Id: I0757372564effa1570b0ae09354cd7d7d75f0c6e
To unsubscribe from these emails, change your notification settings at https://github.com/Checkmk/checkmk/settings/notifications
Branch: refs/heads/master
Home: https://github.com/Checkmk/checkmk
Commit: 30e4fc0fe11bf43a5c06b20c7f1d93be310bdb31
https://github.com/Checkmk/checkmk/commit/30e4fc0fe11bf43a5c06b20c7f1d93be3…
Author: Mehrdad Shahidi <mohammadmehrdad.shahidi(a)checkmk.com>
Date: 2024-08-09 (Fri, 09 Aug 2024)
Changed paths:
M active_checks/check_elasticsearch_query
M cmk/plugins/gcp/special_agents/agent_gcp_status.py
M cmk/plugins/jenkins/lib/jenkins.py
M cmk/special_agents/agent_aws_status.py
M cmk/special_agents/agent_azure_status.py
M cmk/special_agents/agent_bi.py
M cmk/special_agents/agent_datadog.py
M cmk/special_agents/agent_elasticsearch.py
M cmk/special_agents/agent_graylog.py
M cmk/special_agents/agent_hivemanager.py
M cmk/special_agents/agent_hivemanager_ng.py
M cmk/special_agents/agent_rabbitmq.py
M cmk/special_agents/agent_ruckus_spot.py
M cmk/special_agents/agent_splunk.py
M cmk/special_agents/agent_storeonce.py
M cmk/special_agents/v0_unstable/misc.py
M tests/bandit-nosec-markers/bandit-exclusions.md
Log Message:
-----------
Add bandit marker (B113)
Change-Id: Ibdf7f0475538088a094862ec1a7ad6c1823b9d86
To unsubscribe from these emails, change your notification settings at https://github.com/Checkmk/checkmk/settings/notifications