Skip to main content

BioMAJ daemon service

Project description

# About

Microservice to manage biomaj, acts as a frontend to receive biomaj-cli commands and execute operations

Needs mongo and redis



# Development

flake8 --ignore E501 biomaj_daemon


# Run

## Message consumer:

export BIOMAJ_CONFIG=path_to_config.yml
python bin/biomaj_daemon_consumer.py

## Web server

If package is installed via pip, you need a file named *gunicorn_conf.py* containing somehwhere on local server:

def worker_exit(server, worker):
from prometheus_client import multiprocess
multiprocess.mark_process_dead(worker.pid)

If you cloned the repository and installed it via python setup.py install, just refer to the *gunicorn_conf.py* in the cloned repository.

export BIOMAJ_CONFIG=path_to_config.yml
rm -rf ..path_to/prometheus-multiproc
mkdir -p ..path_to/prometheus-multiproc
export prometheus_multiproc_dir=..path_to/prometheus-multiproc
gunicorn -c ../path_to/gunicorn_conf.py biomaj_daemon.daemon.biomaj_daemon_web:app

Web processes should be behind a proxy/load balancer, API base url /api/daemon

## API

For authentication, add api key to HTTP header X-API-KEY

For admin only, operations, add to config.yml

general:
admin:
- admin_user_id



TO use API, some operations are limited to


3.0.18:
Fix some bank status info checks
Add new endpoint /api/daemon/bank/<bank>/owns
Add queued bank names in whatsup
Update pika dependency release
Add tags for traefik support
3.0.17:
Allow use of env variables to override micro.x and rabbitmq variables in global.properties
like for config.yml.
Ex: WEB_LOCAL_ENDPOINT_DOWNLOAD defines proxy address for download web service,
WEB_LOCAL_ENDPOINT defines global proxy address for all web services, etc.
If not defined, will use values from global.properties
3.0.16:
After migration checks, update db_schema to current version
3.0.15:
Add --history option
Catch SIGTERM to cancel bank update for SIGKILL
3.0.14:
Fake version for Pypi re-upload
3.0.13:
Allow per service local_endpoint definition
Add --stats option
Modify --version option to get all module details
Add REST API to daemon (/api/daemon/...)

3.0.12:
Add biomaj_daemon_consumer.py to python scripts for install with package
3.0.11:
Disable daemon web service logging
3.0.10:
Fix tail endpoint syntax
3.0.9:
Fix #1 remove debug log
Fix #2 log dir not removed with --remove-all if proxy option not set
3.0.8:
Fix #78, for multiple banks update in monolithic config, if one fails, next banks are not updated
Add /api/daemon/bank/x/log[/y] endpoint to get last bank session log file
3.0.7:
Add whatsup support for non proxy config
Skip bank config with errors
3.0.6:
Fix logging for monolithic setup
Add whatsup option
Fix prometheus stats
3.0.5:
Fix for python 2.x
3.0.4:
Fix status page with other services
Add missing README in package
3.0.3:
Fix missing parameters
3.0.2:
Move options to management to utils for reuse
Fix --about-me
3.0.1:
Micro service to manage biomaj updates


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

biomaj_daemon-3.0.18.tar.gz (17.7 kB view details)

Uploaded Source

Built Distribution

biomaj_daemon-3.0.18-py2.py3-none-any.whl (18.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file biomaj_daemon-3.0.18.tar.gz.

File metadata

  • Download URL: biomaj_daemon-3.0.18.tar.gz
  • Upload date:
  • Size: 17.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.4.6

File hashes

Hashes for biomaj_daemon-3.0.18.tar.gz
Algorithm Hash digest
SHA256 484e4fb35d501bb4dd4baf33df32ed314dc341cd26c77bed19f77e556ba515d9
MD5 b84f1a6af760fbc8f4579c221ad4d2a3
BLAKE2b-256 8c3d2fdc6f1adc8521cf4cb1d7bcc3af69b1efe471762a064edca888cb1df2c5

See more details on using hashes here.

File details

Details for the file biomaj_daemon-3.0.18-py2.py3-none-any.whl.

File metadata

  • Download URL: biomaj_daemon-3.0.18-py2.py3-none-any.whl
  • Upload date:
  • Size: 18.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.4.6

File hashes

Hashes for biomaj_daemon-3.0.18-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3d250da0f9e62c39000f5c14ea0fd167d31e75cd8ef8d4721a615eff524a1435
MD5 096655ffe1a621075b225268fc45ab19
BLAKE2b-256 b561b995aa895c2d716b5b4ce019f9ba84dc8900abb209a4164dd5a3046e3fc4

See more details on using hashes here.

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