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.0.tar.gz (11.4 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.0-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for cmk_tools-2.1.0.tar.gz
Algorithm Hash digest
SHA256 5f2d5a4e94cf966121a6f463a9eeec5471ee2ba912334a0c017df6c18aa9c7e6
MD5 0492d16bf5eec4bfc534ed588c74e4bd
BLAKE2b-256 07c382d9a9cce86d24a2f3e2c644a4c9667ee95e686d5e3642a8c1a626f1a2d9

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cmk_tools-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 90c4414282b9692654fb37cc5226c74c9fa1f3f1092fa2045e9a87d72c8081e0
MD5 938af842383cab9f079f264a5e02e835
BLAKE2b-256 250bb171ad2874931845b6e54578b7ce408a410fe5dd3daa65b7dd92edbd0dcd

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