diff --git a/packaging/windows/WINDOWS_INSTALLER.md b/packaging/windows/WINDOWS_INSTALLER.md index 4036a54fc5ce1a..f7b8411e8c8f98 100644 --- a/packaging/windows/WINDOWS_INSTALLER.md +++ b/packaging/windows/WINDOWS_INSTALLER.md @@ -11,12 +11,9 @@ You can download the Netdata Windows installer (MSI) from the official releases | [Stable](https://github.com/netdata/netdata/releases/latest/download/netdata-x64.msi) | This is the recommended version for most users as it provides the most reliable and well-tested features. | | [Nightly](https://github.com/netdata/netdata-nightlies/releases/latest/download/netdata-x64.msi) | Offers the latest features but may contain bugs or instabilities. Use this option if you require access to the newest features and are comfortable with potential issues. | -## Graphical User Interface (GUI) - -1. **Double-click** the installer to begin the setup process. -2. **Grant Administrator Privileges**: You'll need to provide administrator permissions to install the Netdata service. - -Once installed, you can access your Netdata dashboard at `localhost:19999`. +> **Note** +> +> The Windows version of Netdata is intended for users on paid plans. ## Silent Mode (Command line) @@ -41,14 +38,26 @@ This section provides instructions for installing Netdata in silent mode, which ### Example Usage -Connect your Agent to your Netdata Cloud Space with token `` and room ``: +To connect your Agent to your Cloud Space: ```bash -msiexec /qn /i netdata-x64.msi TOKEN="" ROOMS="" +msiexec /qn /i netdata-x64.msi TOKEN="" ROOMS="" ``` -Replace `` and `` with your Space claim token and Room ID, respectively. +Where: -> **Note** -> -> The Windows version of Netdata is intended for users on paid plans. +- ``: Your Space claim token from Netdata Cloud. +- ``: Your Room ID(s) from Netdata Cloud. + +This command downloads and installs Netdata in one step: + +```powershell +$ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest https://github.com/netdata/netdata/releases/latest/download/netdata-x64.msi -OutFile "netdata-x64.msi"; msiexec /qn /i netdata-x64.msi TOKEN= ROOMS= +``` + +## Graphical User Interface (GUI) + +1. **Double-click** the installer to begin the setup process. +2. **Grant Administrator Privileges**: You'll need to provide administrator permissions to install the Netdata service. + +Once installed, you can access your Netdata dashboard at `localhost:19999`. diff --git a/src/collectors/COLLECTORS.md b/src/collectors/COLLECTORS.md index 74dc009f675c4d..6e2d85ef54258f 100644 --- a/src/collectors/COLLECTORS.md +++ b/src/collectors/COLLECTORS.md @@ -1169,6 +1169,8 @@ If you don't see the app/service you'd like to monitor in this list: - [Processor](https://github.com/netdata/netdata/blob/master/src/collectors/windows.plugin/integrations/processor.md) +- [Semaphore statistics](https://github.com/netdata/netdata/blob/master/src/collectors/windows.plugin/integrations/semaphore_statistics.md) + - [System statistics](https://github.com/netdata/netdata/blob/master/src/collectors/windows.plugin/integrations/system_statistics.md) - [System thermal zone](https://github.com/netdata/netdata/blob/master/src/collectors/windows.plugin/integrations/system_thermal_zone.md) diff --git a/src/collectors/windows.plugin/integrations/memory_statistics.md b/src/collectors/windows.plugin/integrations/memory_statistics.md index 2f67580a697f06..a31972b2503a1e 100644 --- a/src/collectors/windows.plugin/integrations/memory_statistics.md +++ b/src/collectors/windows.plugin/integrations/memory_statistics.md @@ -60,7 +60,7 @@ The scope defines the instance that the metric belongs to. An instance is unique ### Per Memory statistics instance -These metrics refer to the entire monitored instance +These metrics refer to the entire system. This scope has no labels. diff --git a/src/collectors/windows.plugin/integrations/semaphore_statistics.md b/src/collectors/windows.plugin/integrations/semaphore_statistics.md new file mode 100644 index 00000000000000..7d8cd7eaf6737a --- /dev/null +++ b/src/collectors/windows.plugin/integrations/semaphore_statistics.md @@ -0,0 +1,125 @@ + + +# Semaphore statistics + + + + + +Plugin: windows.plugin +Module: PerflibObjects + + + +## Overview + +Inter-Process Communication (IPC) enables different processes to communicate and coordinate with each other. This collector monitors IPC semaphores, which are synchronization tools that: + +- Control access to shared resources (like files, memory, or devices). +- Ensure only one process can access a resource at a time. +- Prevent conflicts between competing processes. + + +It queries for the 'Objects' object from Perflib in order to gather the metrics. + + +This collector is only supported on the following platforms: + +- windows + +This collector only supports collecting metrics from a single instance of this integration. + + +### Default Behavior + +#### Auto-Detection + +The collector automatically detects all of the metrics, no further configuration is required. + + +#### Limits + +The default configuration for this integration does not impose any limits on data collection. + +#### Performance Impact + +The default configuration for this integration is not expected to impose a significant performance impact on the system. + + +## Metrics + +Metrics grouped by *scope*. + +The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels. + + + +### Per Semaphore statistics instance + +These metrics refer to the entire system. + +This scope has no labels. + +Metrics: + +| Metric | Dimensions | Unit | +|:------|:----------|:----| +| system.ipc_semaphores | semaphores | semaphores | + + + +## Alerts + +There are no alerts configured by default for this integration. + + +## Setup + +### Prerequisites + +No action required. + +### Configuration + +#### File + +The configuration file name for this integration is `netdata.conf`. +Configuration for this specific integration is located in the `[plugin:windows]` section within that file. + +The file format is a modified INI syntax. The general structure is: + +```ini +[section1] + option1 = some value + option2 = some other value + +[section2] + option3 = some third value +``` +You can edit the configuration file using the [`edit-config`](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration/README.md#edit-a-configuration-file-using-edit-config) script from the +Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration/README.md#the-netdata-config-directory). + +```bash +cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata +sudo ./edit-config netdata.conf +``` +#### Options + + + +| Name | Description | Default | Required | +|:----|:-----------|:-------|:--------:| +| PerflibObjects | An option to enable or disable the data collection. | yes | no | + +#### Examples +There are no configuration examples. + + diff --git a/src/collectors/windows.plugin/integrations/system_statistics.md b/src/collectors/windows.plugin/integrations/system_statistics.md index 6df183a7a94adc..03e433d88dacf5 100644 --- a/src/collectors/windows.plugin/integrations/system_statistics.md +++ b/src/collectors/windows.plugin/integrations/system_statistics.md @@ -60,7 +60,7 @@ The scope defines the instance that the metric belongs to. An instance is unique ### Per System statistics instance -These metrics refer to the entire monitored instance. +These metrics refer to the entire system. This scope has no labels. diff --git a/src/collectors/windows.plugin/metadata.yaml b/src/collectors/windows.plugin/metadata.yaml index 20939b92546ad4..a574a24bb4d19d 100644 --- a/src/collectors/windows.plugin/metadata.yaml +++ b/src/collectors/windows.plugin/metadata.yaml @@ -179,7 +179,7 @@ modules: availability: [] scopes: - name: global - description: "These metrics refer to the entire monitored instance" + description: "These metrics refer to the entire system." labels: [] metrics: - name: mem.swap_iops @@ -277,7 +277,7 @@ modules: availability: [] scopes: - name: global - description: "These metrics refer to the entire monitored instance." + description: "These metrics refer to the entire system." labels: [] metrics: - name: system.processes @@ -298,6 +298,92 @@ modules: chart_type: line dimensions: - name: switches + - meta: + plugin_name: windows.plugin + module_name: PerflibObjects + monitored_instance: + name: Semaphore statistics + link: "https://learn.microsoft.com/en-us/windows/win32/sync/semaphore-objects" + categories: + - data-collection.windows-systems + icon_filename: "windows.svg" + related_resources: + integrations: + list: [] + info_provided_to_referring_integrations: + description: "" + keywords: + - ipc + - semaphores + most_popular: false + overview: + data_collection: + metrics_description: | + Inter-Process Communication (IPC) enables different processes to communicate and coordinate with each other. This collector monitors IPC semaphores, which are synchronization tools that: + + - Control access to shared resources (like files, memory, or devices). + - Ensure only one process can access a resource at a time. + - Prevent conflicts between competing processes. + method_description: | + It queries for the 'Objects' object from Perflib in order to gather the metrics. + supported_platforms: + include: ["windows"] + exclude: [] + multi_instance: false + additional_permissions: + description: "" + default_behavior: + auto_detection: + description: | + The collector automatically detects all of the metrics, no further configuration is required. + limits: + description: "" + performance_impact: + description: "" + setup: + prerequisites: + list: [] + configuration: + file: + name: "netdata.conf" + section_name: "[plugin:windows]" + description: "The Netdata main configuration file" + options: + description: "" + folding: + title: "Config option" + enabled: false + list: + - name: PerflibObjects + description: An option to enable or disable the data collection. + default_value: yes + required: false + examples: + folding: + enabled: true + title: "" + list: [] + troubleshooting: + problems: + list: [] + alerts: [] + metrics: + folding: + title: Metrics + enabled: false + description: "" + availability: [] + scopes: + - name: global + description: "These metrics refer to the entire system." + labels: [] + metrics: + - name: system.ipc_semaphores + description: IPC Semaphores + unit: "semaphores" + chart_type: area + dimensions: + - name: semaphores - meta: plugin_name: windows.plugin module_name: PerflibThermalZone