User Tools

Site Tools


uls:agents:develop

Roll Your Own

If you do not find any matching agent, you can develop your own and send values to the ULS-server. You may use

within your agent to send values to the ULS-server.


Bash Shell Scripts

The ULS-Agent for Linux offers executable scripts to transfer values to the ULS-server (and more).


Perl Modul

When you develop your own ULS-agents by using Perl then you might be interested in the Uls2.pm Perl Module. It generates files in the ULS Value File Format which are then transferred to the ULS-server by using a script of the ULS-Client for Unix. It is e.g. used in the ULS-Client for Oracle Databases.


ULS value files

Use your own programming language or scripting environment to acquire your metrics and generate a file in the ULS Value File Format and place the file in /tmp/uls or in a directory of its own and execute:

flush_test_values /my/own/directory

All files in that directory with an .uls extension are then transferred to the ULS-server and the directory is removed.


HTTP Calls

The base technology of all communication to the ULS-server are http calls. Any client may use this “low-level” technology to send directly values to the ULS-server.

:!: But remember: if the connection fails for any reason, you must take care of non-delivered values!

You should find the explanation of the different HTTP-calls in the description of the ULS Value File Format. Have also a look at the examples at the bottom of the page.


put_test_value

Send a simple value:

put_test_value.s2w
  ?hostname=<hostname>
  &section=<section>
  &teststep=<teststep>
  &details=<detail>
  &date=<date>
  &time=<time>
  &wert=<value>
  &einheit=<unit>
  &access=<access>

put_test_value_unique

Send a unique value:

put_test_value_unique.s2w
  ?hostname=<hostname>
  &section=<section>
  &teststep=<teststep>
  &details=<detail>
  &date=<date>
  &time=<time>
  &wert=<value>
  &einheit=<unit>
  &access=<access>

put_test_value_nodup

No duplicates:

put_test_value_nodup.s2w
  ?hostname=<hostname>
  &section=<section>
  &teststep=<teststep>
  &details=<detail>
  &date=<date>
  &time=<time>
  &elapsed=<elapsed>
  &wert=<value>
  &einheit=<unit>
  &access=<access>

put_test_counter

Work with a counter:

put_test_counter.s2w
  ?hostname=<hostname>
  &section=<section>
  &teststep=<teststep>
  &details=<detail>
  &date=<date>
  &time=<time>
  &wert=<value>
  &mode=<cmode>
  &access=<access>

put_test_zeile

Send many detail/value/unit tuples in one HTTP-call:

put_test_zeile.s2w
  ?hostname=<hostname>
  &section=<section>
  &teststep=<teststep>
  &date=<date>
  &time=<time>
  &access=<access>
  &w=<detail>:<value>:<unit>[:<detail>:<value>:<unit>]...
  &access=<access>

put_test_zeile_unique

Send many unique detail/value/unit tuples in one HTTP-call:

put_test_zeile_unique.s2w
  ?hostname=<hostname>
  &section=<section>
  &teststep=<teststep>
  &date=<date>
  &time=<time>
  &access=<access>
  &w=<detail>:<value>:<unit>[:<detail>:<value>:<unit>]...
  &access=<access>

put_test_zeile_nodup

Send many no-duplicate detail/value/unit tuples in one HTTP-call:

put_test_zeile_nodup.s2w
  ?hostname=<hostname>
  &section=<section>
  &teststep=<teststep>
  &date=<date>
  &time=<time>
  &elapsed=<elapsed>
  &w=<detail>:<value>:<unit>[:<detail>:<value>:<unit>]...
  &access=<access>

put_test_blob

Send a file as blob:

put_test_blob.s2w
  ?hostname=<hostname>
  &section=<section>
  &teststep=<teststep>
  &details=<detail>
  &date=<date>
  &time=<time>
  &fname=<local filename>
  &name=<value>
  &access=<access>

put_test_image

Send a file as image:

put_test_image.s2w
  ?hostname=$hostname
  &section=<section>
  &teststep=<teststep>
  &details=<detail>
  &date=<date>
  &time=<time>
  &fname=<local filename>
  &name=<value>
  &access=<access>

put_test_doku

Send a teststep documentation expression:

put_test_doku.s2w
  ?hostname=<hostname>
  &section=<section>
  &teststep=<teststep>
  &doku=<value>

doku_upload

Send a source (server) documentation expression:

doku_upload.s2w
  ?hostname=<hostname>
  &date=<date>
  &time=<time>
  &beschreibung=<value>
  &fname=<local filename>
  &name=<value>

General Usage

httpget

Example with httpget: FIXME

wget.exe

wget.exe can be used to execute HTTP-calls. Here is an example:

C:\> wget.exe [-q] -O - --http-user=<myuser> --http-passwd=<mypwd>  "http://<uls_server_ip>:<port>/<http_call>"

Or, with put_test_value:

C:\> wget.exe [-q] -O - --http-user=<myuser> --http-passwd=<mypwd> "http://<uls_server_ip>:<port>/put_test_value.s2w
         ?hostname=<hostname>
         &section=<section>
         &teststep=<teststep>
         &details=<detail>
         &date=<date>
         &time=<time>
         &wert=<value>
         &einheit=<unit>"

uls/agents/develop.txt · Last modified: 2014-02-13 14:53 by uls