Skip to main content

Common tools used within our organization. Originally created by the HPC team of Ghent University (http://ugent.be/hpc).

Project description

# vsc-base

### Build Status

- Python 2.6 : [![Build Status](https://jenkins1.ugent.be/job/vsc-base-python26/badge/icon)](https://jenkins1.ugent.be/job/vsc-base-python26/)
- Python 2.7 : [![Build Status](https://jenkins1.ugent.be/job/vsc-base-python27/badge/icon)](https://jenkins1.ugent.be/job/vsc-base-python27/)

# Description

Common tools used within our organization.
Originally created by the HPC team of Ghent University (http://ugent.be/hpc).

# Documentation
https://jenkins1.ugent.be/job/vsc-base-python26/Documentation/

# Namespaces and tools

## lib/utils
python utilities to be used as libraries

- __fancylogger__: an extention of the default python logger designed to be easy to use and have a
couple of `fancy` features.
- custom specifiers for mpi loggin (the mpirank) with autodetection of mpi
- custom specifier for always showing the calling function's name
- rotating file handler
- a default formatter.
- logging to an UDP server (logdaemon.py f.ex.)
- easily setting loglevel
- __daemon.py__ : Daemon class written by Sander Marechal (http://www.jejik.com) to start a python script as a daemon.
- __missing.py__: Small functions and tools that are commonly used but not
available in the Python (2.x) API.
- ~~__cache.py__ : File cache to store pickled data identified by a key accompanied by a timestamp.~~ (moved to [vsc-utils](https://github.com/hpcugent/vsc-utils))
- __generaloption.py__ : A general option parser for python. It will fetch options (in this order) from config files, from environment variables and from the command line and parse them in a way compatible with the default python optionparser. Thus allowing a very flexible way to configure your scripts.
It also adds a few other useful extras.
- __affinity.py__ : Linux cpu affinity.
- Based on `sched.h` and `bits/sched.h`,
- see man pages for `sched_getaffinity` and `sched_setaffinity`
- also provides a `cpuset` class to convert between human readable cpusets and the bit version Linux priority
- Based on sys/resources.h and bits/resources.h see man pages for `getpriority` and `setpriority`
- __asyncprocess.py__ : Module to allow Asynchronous subprocess use on Windows and Posix platforms
- Based on a [python recipe](http://code.activestate.com/recipes/440554/) by Josiah Carlson
- added STDOUT handle and recv_some
- __daemon.py__ : [A generic daemon class by Sander Marechal](http://www.jejik.com/articles/2007/02/a_simple_unix_linux_daemon_in_python/)
- __dateandtime.py__ : A module with various convenience functions and classes to deal with date, time and timezone.
- __nagios.py__ : This module provides functionality to cache and report results of script executions that can readily be
interpreted by nagios/icinga.
- __run.py__ : Python module to execute a command, can make use of asyncprocess, answer questions based on a dictionary
- supports a whole lot of ways to input, process and output the command. (filehandles, PIPE, pty, stdout, logging...)
- __mail.py__ : Wrapper around the standard Python mail library.
- Send a plain text message
- Send an HTML message, with a plain text alternative

## bin
A collection of python scripts, these are examples of how you could use fancylogger to log to a daemon, but should not be used directly.
- __logdaemon.py__: A daemon that listens on a port for udp packets and logs them to file, works toghether with fancylogger.
- __startlogdaemon.py__ : Script that will start the logdaemon for you and set environment variables for fancylogger.

# License
vsc-base is made available under the GNU Library General Public License (LGPL) version 2 or any later version.

# Acknowledgements
vsc-base was created with support of [Ghent University](http://www.ugent.be/en),
the [Flemish Supercomputer Centre (VSC)](https://vscentrum.be/nl/en),
the [Flemish Research Foundation (FWO)](http://www.fwo.be/en),
and [the Department of Economy, Science and Innovation (EWI)](http://www.ewi-vlaanderen.be/en).

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

vsc-base-2.5.5.tar.gz (101.4 kB view hashes)

Uploaded source

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