Skip to main content

Command line tool for managing Scylla database nodes

Project description

Scylla-API-Client

Scylla API Client is a command line utility implementing a thin client directly utilizing the Scylla REST API

Installation

pip install scylla-api-client

Usage

See scylla-api-client --help for all options, below are some sample uses:

  • Show all API modules

    $ scylla-api-client --list-modules
    system
    compaction_manager
    gossiper
    endpoint_snitch_info
    storage_proxy
    column_family
    stream_manager
    messaging_service
    storage_service
    cache_service
    failure_detector
    hinted_handoff
    lsa
    commitlog
    collectd
    error_injection
    
  • Show all API commands for specific module system

    $ scylla-api-client --list-module-commands system
    system/logger:
    GET: Get all logger names
    POST: Set all logger level
    system/drop_sstable_caches:
    POST: Drop in-memory caches for data which is in sstables
    system/uptime_ms:
    GET: Get system uptime, in milliseconds
    system/logger/{name}:
    GET: Get logger level
    POST: Set logger level
    
  • Get loglevel for specific logger httpd

    $ scylla-api-client system/logger/{name} GET --name httpd
    "info"
    
  • Set loglevel level=debug for specific logger httpd

    $ scylla-api-client system/logger/{name} POST --name httpd --level debug
    

Tests

pytest is used for writing and executing tests, to run tests you can execute:

pip install -r dev-requirements.txt 
pytest -s -v tests/

Design

Release

Releases are automatically released via GitHub Actions when a new tag v** is pushed to GitHub.

git tag v1.0 <some-commit-hash>
git push origin v1.0

Note: pushing a tag to GitHub requires maintainers/admin privileges.

Contributing

Contributions are welcomed! please create a fork and open a pull request to submit your changes,

Contributing requires installation from source:

  1. Clone scylla-api-client repository
  2. Install development tools by pip install -r dev-requirements.txt
  3. Install scylla-api-client from source by python3 setup.py install --user

Once installed, scylla-api-client can be used by python3 -m scylla_api_client

Note: by installing from source, the package will be installed under $HOME/.local/bin and depending on your OS
may require adding this folder to you $PATH ex. export PATH=$PATH:$HOME/.local/bin.

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

scylla_api_client-1.1.tar.gz (116.8 kB view hashes)

Uploaded Source

Built Distribution

scylla_api_client-1.1-py3-none-any.whl (24.2 kB view hashes)

Uploaded Python 3

Supported by

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