Skip to content

telekom/sysrepo-plugin-os-metrics

OS Metrics Sysrepo Plugin

DevelopmentDocumentationSupportContributeContributorsLicensing

The goal of this project is to create a metrics module and implementation to get more information out of Debian through the NETCONF pipeline.

About this component

The OS Metrics Module was designed to deliver a decent amount of information about the environment (cpu, memory, filesystem, processes) while also being able to configure usage thresholds used for notifications.

Development

The full development progress can be found in the documentation.

Dependencies

libyang
libyang-cpp
sysrepo
sysrepo-cpp
libprocps
pthreads
df

The plugin assumes it's being installed on a Debian system and uses tools like df, and the /proc structure internally.

Build

The plugin is built as a shared library using the MESON build system and is required for building the plugin.

apt install meson ninja-build cmake pkg-config

The plugin install location is the {prefix} folder, the libos-metrics-plugin.so should be installed over to the plugins directory from the sysrepo installation (e.g. the sysrepo install location for the bash commands below is /opt/sysrepo)
Build by making a build directory (i.e. build/), run meson in that dir, and then use ninja to build the desired target.

mkdir -p /opt/sysrepo/lib/sysrepo-plugind/plugins
git clone [email protected]:telekom/sysrepo-plugin-os-metrics.git
cd sysrepo-plugin-os-metrics
meson --prefix="/opt/sysrepo/lib/sysrepo-plugind/plugins" ./build
ninja -C ./build

Installation

Meson installs the shared-library in the {prefix} directory.

ninja install -C ./build

Code of Conduct

This project has adopted the Contributor Covenant in version 2.0 as our code of conduct. Please see the details in our CODE_OF_CONDUCT.md. All contributors must abide by the code of conduct.

Working Language

We decided to apply English as the primary project language.

Consequently, all content will be made available primarily in English. We also ask all interested people to use English as language to create issues, in their code (comments, documentation etc.) and when you send requests to us. The application itself and all end-user facing content will be made available in other languages as needed.

Documentation

The full documentation for the plugin can be found here.

Support and Feedback

The following channels are available for discussions, feedback, and support requests:

Type Channel
Issues
Other Requests

How to Contribute

Contribution and feedback is encouraged and always welcome. For more information about how to contribute, the project structure, as well as additional contribution information, see our Contribution Guidelines. By participating in this project, you agree to abide by its Code of Conduct at all times.

Contributors

Our commitment to open source means that we are enabling -in fact encouraging- all interested parties to contribute and become part of its developer community.

Licensing

Copyright (C) 2022 Deutsche Telekom AG.

Licensed under the BSD 3-Clause License (the "License"); you may not use this file except in compliance with the License.

You may obtain a copy of the License by reviewing the file LICENSE in the repository.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the LICENSE for the specific language governing permissions and limitations under the License.