diff --git a/text_collector_examples/deleted_libraries.py b/text_collector_examples/deleted_libraries.py index b6d5809b..1354d800 100755 --- a/text_collector_examples/deleted_libraries.py +++ b/text_collector_examples/deleted_libraries.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """ Script to count the number of deleted libraries that are linked by running processes and expose a summary as Prometheus metrics. @@ -20,7 +20,7 @@ def main(): try: with open(path, 'rb') as file: for line in file: - part = line.strip().split() + part = line.decode().strip().split() if len(part) == 7: library = part[5] @@ -42,9 +42,9 @@ def main(): num_processes_per_library = {} - for process, library_count in processes_linking_deleted_libraries.iteritems(): + for process, library_count in processes_linking_deleted_libraries.items(): libraries_seen = set() - for library, count in library_count.iteritems(): + for library, count in library_count.items(): if library in libraries_seen: continue @@ -59,7 +59,7 @@ def main(): print('# HELP {0} {1}'.format(metric_name, description)) print('# TYPE {0} gauge'.format(metric_name)) - for library, count in num_processes_per_library.iteritems(): + for library, count in num_processes_per_library.items(): dir_path, basename = os.path.split(library) basename = basename.replace('"', '\\"') dir_path = dir_path.replace('"', '\\"') diff --git a/text_collector_examples/mellanox_hca_temp b/text_collector_examples/mellanox_hca_temp new file mode 100755 index 00000000..0a9e2b0c --- /dev/null +++ b/text_collector_examples/mellanox_hca_temp @@ -0,0 +1,59 @@ +#!/bin/bash +set -eu + +# Script to read Mellanox HCA temperature using the Mellanox mget_temp_ext tool + +# Copyright 2018 The Prometheus Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# Author: Jan Phillip Greimann + +# check if root +if [ "$EUID" -ne 0 ]; then + echo "${0##*/}: Please run as root!" >&2 + exit 1 +fi + +# check if programs are installed +if ! command -v mget_temp_ext >/dev/null 2>&1; then + echo "${0##*/}: mget_temp_ext is not installed. Aborting." >&2 + exit 1 +fi + +cat <&2 + fi +done + +# if device is empty, no device was found +if [ -z "${device-}" ]; then + echo "${0##*/}: No InfiniBand HCA device found!" >&2 + exit 1 +fi