Skip to main content

No project description provided

Project description

CmkRedisTools

Installation

To install the CmkRedisTools package, you can use pip:

pip install cmk-tools

or

poetry add cmk-tools

Testing

To run tests for CmkRedisTools, use the following command:

pytest

Example

All connector must provide unique stage_id for testing purrpose

Using redis semaphore

Here is a simple example of how to use CmkRedisTools:

from cmk_tools import RedisSemaphore, run_with_semaphore

semaphore = RedisSemaphore(
    'redis://localhost:6379/0',
    name="my_semaphore",
    limit=3,            # limit concurrent running task
    timeout=10          # accquire timeout
)

run_with_semaphore(
    your_func,
    func_args,
    func_kwargs,
    execute_when_timeout=True       # execute function if accquired timeout
)

For more detailed documentation, email me.

Using make_request_v2

Here is an example of how to use the make_request_v2 function:

from cmk_tools import make_request_v2

response = make_request_v2(
    url='https://api.example.com/data',
    method='GET',
    headers={'Authorization': 'Bearer YOUR_TOKEN'},
    params={'key': 'value'},
    data={'key': 'value'},
    stage_id='unique-id',
)
print(response.json())

Using es_client

Here is an example of how to use the es_client function:

from cmk_tools import new_elk_client, elk_search

es_client = new_elk_client('host', 'port', 'username', 'password')
body = {"query": {}, "sort": []}
search_res = elk_search(
    es_client, 
    'index', body, 
    with_scroll=False, 
    stage_id='unique-id'
)

# search_res should be an arrays of inner hits
print(search_res)

Here is an example of how to use the es_client search with scroll for get many data:

from cmk_tools import new_elk_client, elk_search

es_client = new_elk_client('host', 'port', 'username', 'password')
body = {"query": {}, "sort": []}
search_res = elk_search(
    es_client, 
    'index', body, 
    with_scroll=True, 
    stage_id='unique-id'
)

# search_res should be an arrays of inner hits
print(search_res)

Using snmp_get

Here is an example of how to use the snmp_get function:

from cmk_tools.snmp_client import snmp_get

data = netsnmp.VarList(
    '....',
)
result = snmp_get(
    host='192.168.1.1',
    community='public',
    data=data,
    stage_id='unique-id'
)

print(result)

Project details


Download files

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

Source Distribution

cmk_tools-2.1.1.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

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

cmk_tools-2.1.1-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file cmk_tools-2.1.1.tar.gz.

File metadata

  • Download URL: cmk_tools-2.1.1.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.5 Linux/6.11.0-1015-azure

File hashes

Hashes for cmk_tools-2.1.1.tar.gz
Algorithm Hash digest
SHA256 2b6eecb2bc2796c410c609b4d69641fd610d817ae318940302f83d3688d76811
MD5 aa91b33962f0a795a6ca3c629505433c
BLAKE2b-256 dc5b690a77026e8b6a0622baa9fc2abb37204bb164ae57f9b8e8447baa43eba2

See more details on using hashes here.

File details

Details for the file cmk_tools-2.1.1-py3-none-any.whl.

File metadata

  • Download URL: cmk_tools-2.1.1-py3-none-any.whl
  • Upload date:
  • Size: 15.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.5 Linux/6.11.0-1015-azure

File hashes

Hashes for cmk_tools-2.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1ef79b19a164e82357f0457da48ab26422040ff35b2d21416d46199d0db108ba
MD5 49c7872472b2c0384cfda63b6a75c304
BLAKE2b-256 36de25628edc1d84895eba28c0e3e49e1a912514bc99f06cb7fc9bb40a09f04f

See more details on using hashes here.

Supported by

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