Skip to main content

PyPI PyPI - Python Version PyPI - License

Python Client for Yandex Cloud Monitoring

Supported Python versions

The 1.*.* release line officially supports Python 3.9–3.12 (see python_requires and classifiers in setup.py). Make sure your dependencies (especially cryptography) are installed with versions compatible with your interpreter. PyPy - supported but starting from pypy:3.11

Installation

pip3 install python-yandex-cloud-monitoring

Getting started with Yandex Monitoring

Credentials

Service Account Keys only ...

Access management

Service Account Keys & Roles

For write metrics, add a folder role: monitoring.editor

import datetime
import random

from pyclm.monitoring import Monitoring

metrics = Monitoring(
    credentials={
        "service_account_key": {
            "service_account_id": "....",
            "id": "....",
            "private_key": "<PEM>"
        },
        "cloudId": "<CLOUD_ID>",
        "folderId": "<FOLDER_ID>"
    },
    group_id="default",
    resource_type="....", resource_id="....",
    elements=100, period=10, workers=1
)

for n in range(1000):
    #  Numeric value (decimal). It shows the metric value at a certain point in time.
    #  For example, the amount of used RAM
    metrics.dgauge(
        "temperature", 
        random.random(), 
        ts=datetime.datetime.now(datetime.timezone.utc), 
        labels={"building": "office", "room": "openspace"}
    )
    #  Tag. It shows the metric value that increases over time.
    #  For example, the number of days of service continuous running.
    metrics.counter("counter", n, labels={"building": "office", "room": "openspace"})
    #  Numeric value (integer). It shows the metric value at a certain point in time.
    metrics.igauge("number", n, labels={"building": "office", "room": "openspace"})
    #  Derivative value. It shows the change in the metric value over time.
    #  For example, the number of requests per second.
    metrics.rate("rate", random.random(), labels={"building": "office", "room": "openspace"})

credentials.cloudId - The ID of the cloud that the resource belongs to.

credentials.folderId - The ID of the folder that the resource belongs to.

resource_type - Resource type, serverless.function, hostname. Value must match the regular expression ([a-zA-Z][-a-zA-Z0-9_.]{0,63})?.

resource_id - Resource ID, i.e., ID of the function producing metrics. Value must match the regular expression ([a-zA-Z0-9][-a-zA-Z0-9_.]{0,63})?.

elements - The number of elements before writing, must be in the range 1-100.

period - Number of seconds to wait for new log entries before writing.

workers - Number of process ingestion.

timeout - Timeouts HTTP requests.

Timeouts can be configured via the timeout argument:

from pyclm.monitoring import Monitoring

metrics = Monitoring(
    credentials={...},
    group_id="default",
    resource_type="...",
    resource_id="...",
    elements=100,
    period=10,
    workers=1,
    timeout=(3, 5),  # (connect_timeout, read_timeout) in seconds
)

By default, timeout=(3, 5) is used for all outgoing HTTP requests (connection timeout 3 seconds, read timeout 5 seconds).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_yandex_cloud_monitoring-1.0.1.tar.gz (20.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_yandex_cloud_monitoring-1.0.1-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file python_yandex_cloud_monitoring-1.0.1.tar.gz.

File metadata

File hashes

Hashes for python_yandex_cloud_monitoring-1.0.1.tar.gz
Algorithm Hash digest
SHA256 b68ca40d2898bde202c2cc50483efd79891083f0bd7c23042f08aa52dbb98405
MD5 8ff46436cdaa27f56e9fdce3b3b61dd0
BLAKE2b-256 8c9036cfc36fa1ee334730c21c559cc778fea6ac79b55dd90bf55e2524699eee

See more details on using hashes here.

File details

Details for the file python_yandex_cloud_monitoring-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for python_yandex_cloud_monitoring-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ffe9786de7966894d6c43e5809547fb6454488e73c5e5bce6f93e13971b88d2f
MD5 f2a316cfc7d6dfb69a9c4c40e7fa8d42
BLAKE2b-256 8bb0a073162678ba3780956691d90c5ebf3254296263f42c5e683e90ca57bdf3

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 files

1.0.0

2 files

0.1.0

2 files

0.0.7

2 files

0.0.6

2 files

0.0.5

2 files

0.0.4

2 files

0.0.2

2 files

0.0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page