TUA(8L)

NAME
TUA - The Uucp Analyzer

SYNOPSIS
tua [ option ]

NOTE
This manual page is no longer supported. See tua.texinfo for up-to-dated information.

DESCRIPTION

The purpose of the TUA utility is to produce a readable and complete analysis of the HoneyDanBer UUCP connections. This manual page describes the TUA command line options and shortly explains its output.

OPTIONS
To specify any of the options, you can use either the short form or the more mnemonic long form. In the latter case, you can abbreviate the name as long as it is unique. For more information on the long format, please refer to the GNU getopt package description.

-S, +no-sys-rep
    Do not print the per System report. The default is to print it out.

-U, +no-user-rep
    Do not print the per User report. The default is to print it out.

-D, +no-daily-rep
    Do not print the Daily report. The default is to print it out.

-C, +command-lists
    Show also the command lists. It is off by default because it makes TUA very hungry of memory.

-O, +only-system SYSTEM
    Consider just system SYSTEM in the reports. You can specify more than one of this option, so you can have TUA consider just those systems.

-m, +no-monthly-act
    Do not output the last 12 months activity summary.

-h, +no-history
    Do not output the history at the end of the reports.

-c, +separate-com
    Separate command lists from the other data. So there will be two tables with the header By System , the first containing only the amounts and the timing of each transfer, the second with all the commands invoked by each System. You must specify also the -C option to make it works.

-k, +kill-system SYSTEM
    Eliminate each reference to SYSTEM from the reports. Neither the transfer table nor the SYSTEM command list will be printed.

-K, +kill-user USER
    Like -k , but it applies to the user called USER .

-H, +update-hist
    Update the history database (see the FILES section below) with the new values. You must have the uucp write permission.

-0, +reset-hist
    Reset the history database, deleting any systems in it. Then put in the database the analysis since the last uuclean . You have to specify also -H to make this option do his job.

-y, +no-hourly-chart
    Do not display the hourly activity chart.

-z, +chart-size SIZE
    Set the size of the hourly activity chart to SIZE rows. The greater is this number, the smaller is the scale. By default it is set to 10.

-o, +chart-only
    Display only the hourly activity chart. Since with this options TUA reads only .Admin/xferstats, it is faster.

-v, +verbose
    Print, on standard error, what is going on. While TUA reads the various logs, it displays a counter of the loaded lines.

-p, +prefix-path PATH
    By default, TUA looks for uucp data in /usr/spool/uucp/ and in the relative subdirectory. For debugging purpose, this option lets you change this directory, so that TUA looks for the data in the specified PATH. Below this point TUA needs a hierarchy like the standard one (see FILES below).

-u, +user-alias USER=ALIAS
    Inserts ALIAS as the new name for USER. Where ever appears USER it will be replaced with ALIAS. Since this occurs at the lowest level, if happens that ALIAS is another user name, this will cause that all the data that belongs to USER will be added to the ALIAS user.

-r, +port-alias PORT=ALIAS
    Like -u , but it applies to the serial port names. This can be useful on those OS where a single serial port has two names, one for normal use and the other with modem control (eg. tty1a and tty1A ).

-s, +sys-alias SYS=ALIAS
    Like -u , but it applies to the systems names.

-E, +glob-user-alias GLOB=ALIAS

-R, +glob-port-alias GLOB=ALIAS

-M, +glob-sys-alias GLOB=ALIAS
    These are the counterpart respectively of -u , -r and -s with meta-characters searches. You can use for example

            tua +glob-user-alias uu*=UUCPUSERS

    and every user name that begins with uu will be mapped in a meta user called UUCPUSERS . See the manual page for sh(1) for a description of meta-characters .

-i, +help
    Show a summary and a description of all the options.

OUTPUT
All reports are printed on the standard output, so you can easily redirect them wherever you want. Assuming, unless otherwise stated, that you do not explicity request to disable some of the reports (eg. when you do not specify any command line option), here is a short description of what you get.

  By System
With this report, you get all the information relative to all the nodes that talk with your machine but those which didn't sent or received something. The data are divided in inbound and outbound. For each system, displayed in alphabetical order, you have the total count of the files transferred, with the relative bytes and times, as well as an average transfer rate (ATP). If +commands-lists was specified, next there is the list of the commands invoked by that node, or directed to it. If a command is preceeded by a number between brackets, that number indicates how many times that command was invoked.

  By User
This report is similar to the previous one, but it shows, in alphabetical order for each local user, all the commands the user invoked, and the transfers he caused.

  By Day
This report summarize the per day activity on the local machine. It doesn't depend on the destinations and on the users.

  SUMMARY by System
It shows a summary of the activity of each system, and the number of calls (inbound and outbound) for it. Please note that sometimes TUA fails in calculating the exact number of calls, because of the misleading log of uucico. Note also that the "total connection time" always differs from the sum of the trasmissions times, because it takes care also of the various uucp dead time. In fact, it is calculated from the difference between the time in which the nodes are really connected (ie. at the end of dial phase, when the modem answers) and the time in which the link is dropped, due to the the end of the conversation as well as to any error. Then comes the time of the last connection with that system. There is also the subdivision of the connection time based on the phone costs, ie "day", "evening", "night". This is completely configurable, so if your telephone company uses a different hourly division you can adjust it (see config.h and phonesw.c.)

  SUMMARY by System (table format)
Substancially, this report summarizes some of the previous informations in a tabular form. Nothing new...

  and since ...
This is the historical data maintained by TUA. It looks like the previous table, but it includes the history of the system, incrementally.

  Last 12 Months Activity
This table shows the activity of the local machine during the last 12 months. Only the transferred amounts are computed.
The months are displayed in a manner so that the last column contains the current one, so it is very readable (of course, it is a matter of opinions!)

  Hourly Activity (per communication port)
This chart shows the uucp hourly load for each used communication port. Each hour is divided in 20 minutes slices.

  Global Hourly Activity
The same as the previous chart, but it reports the sums of all the ports.

HISTORY
TUA maintains a database with the history of each system and of the activity in each of the last 12 months activities. It is usually located in /usr/spool/uucp/.Admin/tua.history and it is actually an ASCII file. It is up to you to update it or not, because probably you will like to run TUA simply to have a notion of what is going on. To make it working correctly, you have to run TUA with the option +update-hist just before you run uuclean. So probably you will have to modify that script including in it a line like

        tua +update-hist {whatever options you like} | mail lele

before it cleans up the uucp logs.

BUGS
Since HDB-Uucp doesn't put a complete datestamp in its logs, but omits the year, it may be possible that TUA fails to compute the various times in the first analysis of the year. This is in my opinion its major weakness. For this silliness, TUA cannot correctly handle logs that cover several years. There is little that I can do to correct the situation; I tried to adjust the year when the to-be-parsed date refers obviously to the previous year, but this is just a work-around...

There is a limit: if your system spent more than 9999 hours linked with someone (or the sum exceed that value), the reports will be garbaged...

DISCLAIMER
TUA is free, and it is redistribuitable under the terms of the GNU General Public License. You can find a copy of it in the file COPYING in the distribution package. I reject any responsability about it. It is simple and safe, but I did not try it under all the possible conditions and environments, so if it causes you some trouble, I'll be sad for a while, but that's it. However, I will try to correct any bugs you will tell me.

And please, forgive my poor english, but I put my soul in it...

AUTHOR
Lele Gaifas, Idea Informatica, Rovereto (TN) - Italy
( piggy@idea.sublink.org )

FILES
 .../.Log/uucico/* uucico's logs
 .../.Log/uucp/* uucp's logs
 .../.Log/uux/* uux's logs
 .../.Log/uuxqt/* uuxqt's logs
 .../.Admin/xferstat Transfer stats
 .../.Admin/tua.history TUA's system history

BUGS REPORT TO
Lele Gaifas, piggy@idea.sublink.org

ACKNOLEDGMENT
I want to thank expecially Marco Lorenzini (marlor@gear.sublink.org) for his help in debugging the previous releases of TUA on the SCO Unix architecture, and for his suggestions on the layout of the reports. And to the "omnipresent" Paolo Ventafridda (venta@i2ack.sublink.org) for his support and interest, and several other people that encouraged me to add more and more functionality, or that let me scan their huge logs.
Thanks also to all the people that, with their PD or GPL software, helped me indirectly with ideas or examples.