Giter VIP home page Giter VIP logo

tlscli's Introduction

==========================
Telecom Log Service Client
==========================

Telecom Log Service Client (``tlscli``) is a Python command-line client for
CORBA Telecom Log Service.

Using it you can:

* create a new log
* query a log
* add or remove log records

For more information on the TelecomLogService, see:
  http://www.omg.org/spec/TLOG/

The project is hosted on Launchpad:
  https://launchpad.net/tlscli

Example
=======
Here's an example session, assuming a Telecom Log Service is running::

    me@mymachine$ tlscli -ORBInitRef LogMgr=`cat /var/run/corba/tls.ior` list
    me@mymachine$ tlscli -ORBInitRef LogMgr=`cat /var/run/corba/tls.ior` create
    0
    me@mymachine$ tlscli -ORBInitRef LogMgr=`cat /var/run/corba/tls.ior` list
    0
    me@mymachine$ tlscli -ORBInitRef LogMgr=`cat /var/run/corba/tls.ior` info 0
    id: 0
    QoS: none
    max-record-life: infinite
    max-size: unlimited
    current-size: 56 bytes
    records: 1
    log-full-action: wrap
    administrative-state: unlocked
    forwarding-state: on
    operational-state: enabled
    interval: now - forever
    availability-status: { off-duty: False; full: False }
    capacity-alarm-thresholds: [100]
    week-mask: 
    ------------------------------------------------------------------------------
    me@mymachine$ tlscli -ORBInitRef LogMgr=`cat /var/run/corba/tls.ior` write 'Hello world!' to 0
    me@mymachine$ tlscli -ORBInitRef LogMgr=`cat /var/run/corba/tls.ior` info 0
    id: 0
    QoS: none
    max-record-life: infinite
    max-size: unlimited
    current-size: 57 bytes
    records: 1
    log-full-action: wrap
    administrative-state: unlocked
    forwarding-state: on
    operational-state: enabled
    interval: now - forever
    availability-status: { off-duty: False; full: False }
    capacity-alarm-thresholds: [100]
    week-mask: 
    ------------------------------------------------------------------------------
    me@mymachine$ tlscli -ORBInitRef LogMgr=`cat /var/run/corba/tls.ior` retrieve 10 after `date +%Y%m%d` from 0
    id: 1
    time: Sat Dec 25 17:11:57 2010
    attributes: []
    info: Hello world!
    ------------------------------------------------------------------------------


This creates a new log with id 0, then write a new log record to it with text ``Hello world``.

Prerequisites
=============

To install ``tlscli``, you need:
 * a working installation of
   `omniORBpy <http://omniorb.sourceforge.net/>`_, or a working installation of
   `PyORBit <https://github.com/GNOME/pyorbit>`_.
 * `python-dateutil <http://niemeyer.net/python-dateutil>`_

To proceed to installation, run the following command from where you unpacked
``tlscli``::

  me@mymachine$ python setup.py install --user

This will automatically install everything needed into
your ``$HOME/.local`` (``tlscli`` itself will be in ``$HOME/.local/bin``).

To run ``tlscli``, you need a Telecom Log Service running somewhere.
``tlscli`` is known to work with the following implementations:

 * ``tao_tls_basic``, ``tao_tls_event`` and ``tao_tls_notify`` provided
   with `TAO <http://www.cs.wustl.edu/~schmidt/TAO.html>`_
 * ``tlserl``, an Erlang implementation available on
   `bitbucket <https://bitbucket.org/tgg/tlserl/>`_

Running
=======

When invoking ``tlscli`` you need to specify how to connect to the LogMgr.
The LogMgr is the object to use to access (or create) logs.

This is achieved by specifying an initial reference for the LogMgr, using one
of the three following methods:

* add ``-ORBInitRef LogMgr=corbaname:iiop:1.2@MACHINE:PORT#NAME``
* add ``-ORBInitRef LogMgr=corbaloc:iiop:1.2@MACHINE:PORT/NAME``
* add ``-ORBInitRef LogMgr=IOR:IOR``

where ``MACHINE:PORT`` specify where to find a Telecom Log Service (or
a Name Service for ``corbaname``), and ``NAME`` is the name to use
for the service (or the Name Service for ``corbaname``).

Please read `The corbaloc and corbaname URLs chapter
<http://www.ciaranmchale.com/corba-explained-simply/the-corbaloc-and-corbaname-urls.html>`_
in the great online free book
`CORBA Explained Simply <http://www.ciaranmchale.com/corba-explained-simply/>`_.

Commands
========

Creating a new log
------------------
To create a new log, use ``tlscli create``. This will return the id of the
newly created log.

Querying an existing log
------------------------
* ``list`` will return the id of all logs available from the given LogMgr.
  This is the default command if none is specified
* ``info`` will return information about an existing log, such as size,
  record count and current status
* ``query`` can be used to search for log records matching a given constraint
* ``retrieve`` retrieves a given count of log records before or after the
  specified date

Modifying an existing log
-------------------------
* ``write`` adds a new log record to an existing log
* ``delete`` removes log records matching a given constraint from an existing
  log


For more information on commands, use ``tlscli --help``.

tlscli's People

Contributors

tgg avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.