[ Top | Up | Prev | Next | Map | Index ]

# Analog 4.14: Other reports

This section deals with the non-time reports. There are quite a lot of commands which control these reports, although we've seen some of them already.

First, these reports have `COLS` commands, just like the time reports. (See the section on Time reports for how to use these commands.) In the non-time reports, three additional columns are available, namely `d` for date of last access, `D` for date and time of last access, and `N` for the number of the item in the list. So, for example,

    REQCOLS NRD

counts the files in the Request Report, listing the number of requests for each and the time when each was last requested. The full list of `COLS` commands for non-time reports is `HOSTCOLS`, `ORGCOLS`, `DOMCOLS`, `REQCOLS`, `DIRCOLS`, `TYPECOLS`, `SIZECOLS`, `PROCTIMECOLS`, `REDIRCOLS`, `FAILCOLS`, `REFCOLS`, `REFSITECOLS`, `SEARCHQUERYCOLS`, `SEARCHWORDCOLS`, `REDIRREFCOLS`, `FAILREFCOLS`, `FULLBROWCOLS` (Browser Report), `BROWCOLS` (Browser Summary), `OSCOLS`, `VHOSTCOLS`, `USERCOLS`, `FAILUSERCOLS` and `STATUSCOLS`. Not every column is allowed in every report, but if you specify an illegal one, analog will warn you about it.

Next you need to know how use a `SORTBY` command to specify how the reports should be sorted. There are six possible ways of sorting reports: `REQUESTS`, `PAGES` (i.e., page requests), `BYTES`, `DATE`, `ALPHABETICAL` and `RANDOM` (no sorting, sometimes useful for speed in very long reports). For example, the command

    HOSTSORTBY ALPHABETICAL

will sort the Host Report alphabetically. The other `SORTBY` commands are `ORGSORTBY`, `DOMSORTBY`, `REQSORTBY`, `DIRSORTBY`, `TYPESORTBY`, `REDIRSORTBY`, `FAILSORTBY`, `REFSORTBY`, `REFSITESORTBY`, `SEARCHQUERYSORTBY`, `SEARCHWORDSORTBY`, `REDIRREFSORTBY`, `FAILREFSORTBY`, `FULLBROWSORTBY`, `BROWSORTBY`, `OSSORTBY`, `VHOSTSORTBY`, `USERSORTBY`, `FAILUSERSORTBY` and `STATUSSORTBY`. Again, not every sort method is possible in every report, but you'll be warned if you choose an illegal one.

There is one known bug concerned with `SORTBY ALPHABETICAL`. The report is sorted before any `OUTPUTALIAS` is applied. This means that if an `OUTPUTALIAS` has been specified for the report, then the report will not be sorted correctly.

You can also specify a `FLOOR` for most reports, saying how much activity an item needs before it is listed on the report. There are lots of possible ways of specifying floors, which I'll list here, using the `DOMFLOOR` (Domain Report `FLOOR`) command as an example. Essentially each one consists of a number indicating the level of the floor, followed by a letter indicating the floor criterion.

    DOMFLOOR 1000r       # all domains with at least 1000 requests
    DOMFLOOR 1000p       # at least 1000 requests for pages
    DOMFLOOR 1000000b    # at least 1,000,000 bytes transferred
    DOMFLOOR 1Mb         # at least 1 megabyte
    DOMFLOOR 0.5%r       # 0.5% of the requests (ditto %p and %b)
    DOMFLOOR 0.5:r       # 0.5% of the maximum number of requests
                         # for any domain (ditto :p and :b)
    DOMFLOOR 970701d     # last access since 1st July 1997
    DOMFLOOR -00-01-00d  # last access in last month (see
                         # documentation on FROM and TO commands)
    DOMFLOOR -100r       # domains with top 100 number of requests
                         # (ditto -100p, -100b, -100d)

The other `FLOOR` commands are `HOSTFLOOR`, `ORGFLOOR`, `REQFLOOR`, `DIRFLOOR`, `TYPEFLOOR`, `REDIRFLOOR`, `FAILFLOOR`, `REFFLOOR`, `REFSITEFLOOR`, `SEARCHQUERYFLOOR`, `SEARCHWORDFLOOR`, `REDIRREFFLOOR`, `FAILREFFLOOR`, `FULLBROWFLOOR`, `BROWFLOOR`, `OSFLOOR`, `VHOSTFLOOR`, `USERFLOOR`, `FAILUSERFLOOR` and `STATUSFLOOR`. Once again, not every floor method is legal for every report, but you'll be warned if you try and choose an illegal one.

I've already told you about how to turn each report on and off from the command line using its code letter. In fact, you can specify the `SORTBY` and the `FLOOR` in the same command. Take the example of the Referrer Report. If you follow the `+f` (to turn the report on) with a letter, it represents the sort method according to the following code:

`r`
  `REQUESTS`
`p`
  `PAGES`
`b`
  `BYTES`
`d`
  `DATE`
`a`
  `ALPHABETICAL`
`x`
  `RANDOM`

You can then, or alternatively, use one of the above `FLOOR` formats to specify the floor. If you specify a `SORTBY`, you can also leave off the last letter of the floor, and analog will guess it according to the sort method: the floor will be the same as the sort method, or by requests if the sort method is `ALPHABETICAL` or `RANDOM`. Here are four examples:

`+fp`
  means turn the referrer report on and sort it by page requests, but says nothing about the floor;
`+f100r`
  means list all referrers with at least 100 requests, but says nothing about the sort method;
`+fb10000`
  means list all referrers with at least 10,000 bytes, sorted by bytes;
`+fa-000101d`
  means list all referrers with accesses this year, sorted alphabetically.

We've already seen some other commands affecting what was listed in the non-time reports. The output `INCLUDE` and `EXCLUDE` commands specified lines to omit from each report, and the `OUTPUTALIAS` commands specified some aliasing to do on the names before they were listed. There were also `LINKINCLUDE` and `LINKEXCLUDE`, and `REFLINKINCLUDE` and `REFLINKEXCLUDE` commands to control what was linked to in the Request Report and the three referrer reports. You might want to have another look at these paragraphs.

There's one other command which affects the links in the Request Report. The command `BASEURL` prepends an additional string to the URLs in the target of the link. For example, after the command

    BASEURL http://www.statslab.cam.ac.uk

`/~sret1/` will be linked to `http://www.statslab.cam.ac.uk/~sret1/`, not just to `/~sret1/`. This is very useful if you want to display the statistics on a different server from the server they refer to. If you want the file to be listed as `http://www.statslab.cam.ac.uk/~sret1/`, rather than just to be linked to that address, you need to use the second argument to the `LOGFILE` command instead.

In the next section, we'll look at commands for generating hierarchical reports, which are closely related to the commands in this section.

Go to the analog home page.

Need help with analog? Use the analog-help mailing list.

[ Top | Up | Prev | Next | Map | Index ]