File: awffull.conf.5

package info (click to toggle)
awffull 3.10.2-4
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 7,044 kB
  • sloc: ansic: 10,297; sh: 4,583; xml: 2,198; perl: 271; makefile: 49; sed: 16
file content (976 lines) | stat: -rw-r--r-- 35,028 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
'\" -*- coding: us-ascii -*-
.if \n(.g .ds T< \\FC
.if \n(.g .ds T> \\F[\n[.fam]]
.de URL
\\$2 \(la\\$1\(ra\\$3
..
.if \n(.g .mso www.tmac
.TH awffull.conf 5 2008-Dec-13 "" ""
.SH NAME
AWFFull \- A Webalizer Fork, Full o' features
.SH DESCRIPTION
awffull.conf is the configuration file for
awffull(1). awffull.conf is a standard
ASCII(7) text files that may be created or
edited using any standard editor.
.PP
Blank lines and lines that begin with a pound sign ('#') are
ignored.
.PP
Any other lines are considered to be configuration lines, and have
the form \(oqKeyword Value\(cq, where the \(oqKeyword\(cq is
one of the currently available configuration keywords, and
\(oqValue\(cq is the value to assign to that particular
option.
.PP
Any text found after the keyword up to the end of the line is
considered the keyword's value, so you should not include anything after
the actual value on the line that is not actually part of the value being
assigned. The file
\*(T<\fIsample.conf\fR\*(T> provided with
the distribution contains lots of useful documentation and examples as
well.
.PP
Some \(oqKeywords\(cq will accept a
2^nd value. In those situations, the first value
may be enclosed in double quotes (") to allow for whitespace.
.PP
Keywords are Case Insensitive. Values are Case Sensitive, with some
gotchas: See Ignore* for details.
.SH WILDCARDS
Wildcards within AWFFull are a little non
standard and may cause some confusion.
.PP
Wildcards are only valid within the Value of certain keywords
.PP
A Value can have either a leading or trailing '*' to signify a
wildcard character. If no wildcard is found, a match can occur anywhere in
the string. Given a string \(oqwww.yourmama.com\(cq, the values
\(oqyour\(cq, \(oq*mama.com\(cq and \(oqwww.your*\(cq
will all match.
.PP
Thus the use of the wildcard signifies that the other end of the
Value is anchored at the Beginning or End of a field to be searched
against.
.PP
eg. A Value of \(oqBot*\(cq implies that the field (probably
UserAgent in this case) MUST start with the letters Bot. Or in the case of
a Hostname \(oq*.gov.au\(cq implies a match ONLY against Australian
Government hostnames.
.SH "RUN OPTIONS"
The Run Options are the generic ones that tell AWFFull where stuff
is and how to generally operate. Some of these can modify the results that
AWFFull will produce.
.TP 
OutputDir
OutputDir is where you want to put the
output files. This should should be a full path name, however
relative ones might work as well. If no output directory is
specified, the current directory will be used.
.TP 
LogFile
LogFile defines the web server log file
to use. If not specified here or on on the command line, input will
default to STDIN. If the log filename ends in '.gz' (ie: a
gzip compressed file), it will be
decompressed on the fly as it is being read.
.TP 
LogType
LogType defines the log type being
processed. Normally, AWFFull expects a
CLF or Combined web server log as input. Using this option, you can
process ftp logs as well (\*(T<\fIxferlog\fR\*(T> as produced
by wu-ftpd and others), or
Squid native logs. Values can be 'auto'
\&'clf', 'combined', 'ftp', 'domino' or 'squid', with 'auto' the
default. The 'auto' value means that
AWFFull will try and work out what log
format you are sending to it. If no joy,
AWFFull will immediately exit.
.TP 
GeoIP
GeoIP enables or disables the use of the
GeoIP capability for more accurate
detection of countries. Default is \(oqno\(cq. NOTE! Do not
enable GeoIP if you analyse files that have had the IP Address
translated to a Fully Qualified Host Name. Use either raw IP
Addresses and GeoIP, or Names and disable GeoIP. ie. Don't use GeoIP
AND DNShistory.
.TP 
GeoIPDatabase
GeoIPDatabase is the location of the
GeoIP database file. Default is
\*(T<\fI/usr/share/GeoIP/GeoIP.dat\fR\*(T>, which is
where a default GeoIP install will put
it. Note that the database is updated monthly. For the details see:
\(lahttp://www.maxmind.com/app/geoip_country\(ra
.TP 
Incremental
Incremental processing allows multiple
partial log files to be used instead of one huge one. Useful for
large sites that have to rotate their log files more than once a
month. AWFFull will save its internal
state before exiting, and restore it the next time run, in order to
continue processing where it left off. This mode also causes
AWFFull to scan for and ignore duplicate
records (records already processed by a previous run). See the
\*(T<\fIREADME\fR\*(T> file for additional information. The
value may be 'yes' or 'no', with a default of 'no'. The file
\*(T<\fIawffull.current\fR\*(T> is used to store the current
state data, and is located in the output directory of the program
(unless changed with the IncrementalName option
below). Please read at least the section on Incremental processing
in the \*(T<\fIREADME\fR\*(T> file before you enable this
option.
.TP 
TimeMe
TimeMe allows you to force the display of
timing information at the end of processing. A value of 'yes' will
force the timing information to be displayed. A value of 'no' has no
effect.
.TP 
IgnoreHist
IgnoreHist should not be used in a
standard configuration, but it is here because it is useful in
certain analysis situations. If the history file is ignored, the
main \(oq\*(T<\fIindex.html\fR\*(T>\(cq file will only
report on the current log files contents. Incremental data (if
present) is still processed. Useful when you want to reproduce the
reports from scratch, for example. USE WITH CAUTION! Valid values
are \(oqyes\(cq or \(oqno\(cq. Default is
\(oqno\(cq.
.TP 
IncrementalName
IncrementalName allows you to specify the
filename for saving the incremental data in. It is similar to the
HistoryName option where the name is relative to the specified
output directory, unless an absolute filename is specified. The
default is a file named
\(oq\*(T<\fIawffull.current\fR\*(T>\(cq kept in the
normal output directory. If you don't specify
Incremental as 'yes' then this option has no
meaning.
.TP 
HistoryName
HistoryName allows you to specify the
name of the history file produced by
AWFFull. The history file keeps the data
for up to 12 months worth of logs, used for generating the main HTML
page (\*(T<\fIindex.html\fR\*(T>). The default is a file named
\*(T<\fIawffull.hist\fR\*(T>, stored in the specified output
directory. If you specify just the filename (without a path), it
will be kept in the specified output directory. Otherwise, the path
is relative to the output directory, unless absolute (leading
/).
.SH "ANALYSIS OPTIONS"
These are the basic analysis options that one can and should modify
to start fine tuning AWFFull against a given
website.
.TP 
PageType
PageType lets you tell AWFFull what types of URL's you
consider a 'page'. Most people consider html and cgi documents as
pages, while not images and audio files. If no types are specified,
defaults will be used ('htm', 'html', 'cgi' and HTMLExtension if
different for web logs, 'txt' for ftp logs). Putting the more likely
page types first in the list should increase the speed of a
run.

Do Not Use Wildcards Here. It will not work.
.TP 
NotPageType
NotPageType is the direct and incompatible opposite of
PageType. You can use one set or the other, but not both. PageType
specifies what *is* a Page, NotPageType specifies what *isn't*, and
hence by implication, everything else is a page. Neither method is
more or lessor correct than the other. It's more what is more
accurate for *your* site. Do not add the "." or use any wildcards.
As a general rule. There are some assumed internal optimisations
that may otherwise break. Those who understand pcre's would do well
to examine the source of parser.c if they wish to extract greater
flexibility from the below.
.TP 
FoldSeqErr
FoldSeqErr forces AWFFull to ignore
sequence errors. This is useful for Netscape and other web servers
that cache the writing of log records and do not guarantee that they
will be in chronological order. The use of the FoldSeqErr option
will cause out of sequence log records to be treated as if they had
the same time stamp as the last valid record. The default action is
to ignore out of sequence log records.
.TP 
SearchEngine
The SearchEngine keywords allow specification of search
engines and their query strings on the URL. These are used to locate
and report what search strings are used to find your site. The first
word is a substring to match in the referrer field that identifies
the search engine, and the second is the URL variable used by that
search engine to define it's search terms.
.TP 
VisitTimeout
VisitTimeout allows you to set the default timeout for a visit
(sometimes called a 'session'). The default is 30 minutes, which
should be fine for most sites. Visits are determined by looking at
the time of the current request, and the time of the last request
from the site. If the time difference is greater than the
VisitTimeout value, it is considered a new visit, and visit totals
are incremented. Value is the number of seconds to timeout
(default=1800=30min)
.TP 
TrackPartialRequests
TrackPartialRequests is used to track 206 codes. This gives
two additional columns in the Top URLs tables. The first to "Hits"
counts the number of partial requests The second to "Volume" counts
the volume in partial requests This option is more of use to those
with lots of PDF's.
.TP 
MangleAgents
The MangleAgents allows you to specify how much, if any,
AWFFull should mangle user agent names. This allows several levels
of detail to be produced when reporting user agent statistics. There
are six levels that can be specified, which define different levels
of detail suppression. Level 5 shows only the browser name (MSIE or
Mozilla) and the major version number. Level 4 adds the minor
version number (single decimal place). Level 3 displays the minor
version to two decimal places. Level 2 will add any sub-level
designation (such as Mozilla/3.01Gold or MSIE 3.0b). Level 1 will
attempt to also add the system type if it is specified. The default
Level 0 displays the full user agent field without modification and
produces the greatest amount of detail. User agent names that can't
be mangled will be left unmodified.
.TP 
AssignToCountry
AssignToCountry allows a form of override to force given
domains to a specified country. Use the standard 2 letter country
codes. Can also use org, com, net and so on, if more appropriate.
With judicious use of AllSites, GroupSite and 'whois', this can
cover the majority of your users without too much effort.
.TP 
IndexAlias
AWFFull normally strips the string 'index.' off the end of
URL's in order to consolidate URL totals. For example, the URL
/somedir/index.html is turned into /somedir/ which is really the
same URL. This option allows you to specify additional strings to
treat in the same way. You don't need to specify 'index.' as it is
always scanned for by AWFFull, this option is just to specify
_additional_ strings if needed. If you don't need any, don't specify
any as each string will be scanned for in EVERY log record... A
bunch of them will degrade performance. Also, the string is scanned
for anywhere in the URL, so a string of 'home' would turn the URL
/somedir/homepages/brad/home.html into just /somedir/ which is
probably not what was intended.
.TP 
IgnoreIndexAlias
The opposite (in a way) of IndexAlias is IgnoreIndexAlias.
This will STOP any URL variable stripping, as well as ignoring the
default "index." setting, or any that you set above.
.SH "IGNORE* OPTIONS"
The Ignore* keywords allow you to completely ignore, or filter away,
log records based on hostname, URL, user agent, referrer or user name. Use
the same syntax as the Hide* keywords, where the value can have a leading
or trailing wildcard '*'.
.TP 
IgnoreURL
Filters out traffic accessing certain URLs. eg You may wish to
avoid seeing traffic that accesses administration functions, thus
"IgnoreURL /admin*". URLs are case sensitive.
.TP 
IgnoreSite
Ignore sites that visit this website. Ignore by what is
presented to awffull - name or IP Address. Sites are lowercased
prior to filtering, so if Ignore'ing by name, do use a lowercased
Value.
.TP 
IgnoreReferrer
Ignore specified referrers. Very useful for filtering away
SPAM Referrers. Referrers are partially case sensitive. \eo/ The host
portion is lowercased; the URI is case sensitive.
.TP 
IgnoreUser
Ignore specified users. User names are lowercased prior to
filtering.
.TP 
IgnoreAgent
Agents are case sensitive.
.SH "INCLUDE* OPTIONS"
The Include* keywords allow you to force the inclusion of log
records based on hostname, URL, user agent, referrer or user name. The
Include* keywords take precedence over the Ignore* keywords.
.PP
Note: Using Ignore/Include combinations to selectively process parts
of a web site is _extremely inefficient_!!! Avoid doing so if possible ie:
grep or gawk the records to a separate file if you really want that kind
of report.
.TP 
IncludeURL
.TP 
IncludeSite
.TP 
IncludeReferrer
.TP 
IncludeUser
.TP 
IncludeAgent
.SH "SEGMENTING OPTIONS"
Segmenting is a bit like the Ignore* and Include* keywords. Where it
differs is in "remembering". Such that, as a \(oqsession\(cq (or
\(oqvisit\(cq) moves away from the original entry condition, that
session is still tracked. So if you segment on a referal from Google, only
sessions that were refered to the analysed website, from Google, will be
tracked. Even as that same session accesses other pages within the
website.
.PP
eg. Google -> Site Page 1 -> Site Page 2 -> Site Page
3
.PP
Whereas Ignore/Include would only filter the first interaction. eg.
Google -> Site Page 1
.PP
By "session" (or \(oqvisit\(cq) it is meant that the time
limitation of a session (typically 30 minutes timeout) will impact. So in
the above example from Google, if the last step (from Page 2 to Page 3)
occured 31+ minutes after the Page 1 to Page 2 transition, then this final
step would NOT be included. The trail would be:
.PP
Google -> Site Page 1 -> Site Page 2
.PP
Please do be aware that currently AWFFull
uses IP Addresses to determine the continuation of a given session. This
will be most flawed if you have a user population that sits behind
corporate firewalls, or ISP Proxies. To mention two major problem
areas.

Why do Segmenting?

\(lahttp://judah.webanalyticsdemystified.com/2007/11/a-few-tips-on-web-analytics-segmentation.html\(ra
.PP
\(oqSegment analysis will tell you different things about your
audience than you will realize from studying overall population
metrics.\(cq
.PP
\(oqThe goal of segmentation is to maximize future value of that
segment by optimizing your marketing mix.\(cq
.PP
With apologies to Judah for mixing his phrase order around.
:-)
.TP 
SegCountry
Segment by Country: Only track sessions that come from the
following countries. This will be determined by:
.RS 
.TP 0.4i
1.
Use of AssignToCountry overrides
.TP 0.4i
2.
GeoIP lookups if so configured and enabled
.TP 0.4i
3.
Hostname TLD. eg .au
.RE

The third option is generally going to be the worst for
accuracy. eg. We have plenty of Australian IP addresses that
otherwise resolve to .com or .net etc.

It is strongly advised to enable GeoIP if you wish to use this
option.
.TP 
SegReferer
Segment by Referer: Only track sessions that originated from
the following referers. NOTE!!!! SegReferer only works against the
HOST name. Not the full URL.
.SH "DISPLAY OPTIONS"
The Display Options modify the resulting output that
AWFFull produces. Things like HTML Headers and
Footers to add on every page. These options don't change the numbers that
AWFFull will calculate, but may change which ones appear, giving the
illusion of a numerical change.
.TP 
ReportTitle
ReportTitle is the text to display as the title. The hostname
(unless blank) is appended to the end of this string (separated with
a space) to generate the final full title string. Default is (for
English) \(oqUsage Statistics for\(cq.
.TP 
HostName
HostName defines the hostname for the report. This is used in
the title, and is prepended to the URL table items. This allows
clicking on URL's in the report to go to the proper location in the
event you are running the report on a 'virtual' web server, or for a
server different than the one the report resides on. If not
specified here, or on the command line,
AWFFull will try to get the hostname via
a uname system call. If that fails, it will default to
\(oqlocalhost\(cq.
.TP 
IndexMonths
This option controls how many years worth of data to display
on the front summary page. In months. eg: Display the last 5 years:
5 x 12 = 60
.TP 
DailyStats
DailyStats allows the daily statistics table to be disabled -
not displayed. Values may be \(oqyes\(cq or
\(oqno\(cq. Default is \(oqyes\(cq - do display the
Daily Statistics table.
.TP 
HourlyStats
HourlyGraph and HourlyStats allows the hourly statistics graph
and statistics table to be disabled (not displayed). Values may be
"yes" or "no". Default is "yes".
.TP 
CSSFilename
CSSFilename is used to set the name of the CSS file to use in
conjunction with the generated html. An existing file is not
overwritten, so feel free to make you own changes to the default
file. The default is \*(T<\fIawffull.css\fR\*(T>.
.TP 
FlagsLocation
FlagsLocation will enable the display of country flag pictures
in the country table. The path is that for a webserver, not file
system. Can be relative or complete. The trailing slash is not
necessary. The default location is not set and hence will not be
used.
.TP 
YearlySubtotals
YearlySubtotals will display the subtotal for a given year in
the main page. This is in addition to the Grand Total of all
years.
.TP 
GroupShading
The GroupShading allows grouped rows to be shaded in the
report. Useful if you have lots of groups and individual records
that intermingle in the report, and you want to differentiate the
group records a little more. Value can be \(oqyes\(cq or
\(oqno\(cq, with \(oqyes\(cq being the default.
.TP 
GroupHighlight
GroupHighlight allows the group record to be displayed in
BOLD. Can be either \(oqyes\(cq or \(oqno\(cq with the
default being \(oqyes\(cq.
.TP 
HTMLExtension
HTMLExtension allows you to specify the filename extension to
use for generated HTML pages. Normally, this defaults to "html", but
can be changed for sites who need it (like for PHP embedded
pages).
.TP 
UseHTTPS
UseHTTPS should be used if the analysis is being run on a
secure server, and links to urls should use \(oqhttps://\(cq
instead of the default \(oqhttp://\(cq. If you need this, set
it to \(oqyes\(cq. Default is \(oqno\(cq. This only
changes the behaviour of the \(oqTop URLs\(cq table.
.TP 
Top*
The various \(oqTop\(cq options below define the number
of entries for each table. Tables may be disabled by using zero (0)
for the value.
.TP 
TopURLs
The most accessed URLs or Resources by number of requests
(hits). Includes both Pages and Images, for example. Defaults to 30
URLs.
.TP 
TopKURLs
The greatest volume generating URLs. Defaults to 10
URL's.
.TP 
TopEntry
The most accessed initial URLs within a complete Visit. Will
also display Single Access counts, Stickiness ration and Popularity
ratio. Defaults to 10 URLs.
.TP 
TopExit
The most accessed last URLs within a complete Visit. ie: The
last page recorded of a Visit. Also displays the Popularity ratio.
Defaults to 10 URLs.
.TP 
Top404Errors
The most seen error requests and a corresponding referring
URL. Defaults to 0, ie not shown.
.TP 
TopSites
Those Sites that have accessed the most Pages. Default is 30
Sites.
.TP 
TopKSites
Those Sites that have downloaded the greatest Volume. Default
is 10 Sites.
.TP 
TopReferrers
Those local and remote URLs that refer the most requests.
Default is 30 Referrers.
.TP 
TopSearch
Those words and phrases used at remote Search Engines to
direct traffic here. Default is 20 Phrases.
.TP 
TopUsers
Those logged in users who most use the site. Default is 20
Users.
.TP 
TopAgents
The Browser Agents that are busiest against this site. Default
is 15 Agents.
.TP 
TopCountries
A view of all traffic against this site via country.
.TP 
All*
The All* keywords allow the display of all the below measures.
If enabled, a separate HTML page will be created, and a link will be
added to the bottom of the appropriate "Top" table. There are a
couple of conditions for this to occur. First, there must be more
items than will fit in the "Top" table (otherwise it would just be
duplicating what is already displayed). Second, the listing will
only show those items that are normally visible, which means it will
not show any hidden items. Grouped entries will be listed first,
followed by individual items. The value for these keywords can be
either 'yes' or 'no', with the default being 'no'. Please be aware
that these pages can be quite large in size, particularly the sites
page, and separate pages are generated for each month, which can
consume quite a lot of disk space depending on the traffic to your
site.
.TP 
AllURLs
All accessed URLs
.TP 
AllEntryPages
All Pages that initialised a Visit
.TP 
AllExitPages
All the last or exit pages in all Visits.
.TP 
All404Errors
All ErrorRequests and the corresponding referral URLs.
.TP 
AllSites
All remote sites that accessed this website.
.TP 
AllReferrers
All local and remote referring URLs
.TP 
AllSearchStr
All Remote Search Engine words and Phrases used to refer
traffic here.
.TP 
AllUsers
All users who logged into this website.
.TP 
AllAgents
All Browser Agents used to access this site. Useful for
identifying robots.
.TP 
GMTTime
GMTTime allows reports to show GMT (UTC) time instead of local
time. Default is to display the time the report was generated in the
timezone of the local machine, such as EDT or PST. This keyword
allows you to have times displayed in UTC instead. Use only if you
really have a good reason, since it will probably screw up the
reporting periods by however many hours your local time zone is off
of GMT.
.TP 
HTMLPre
HTMLPre defines HTML code to insert at the very beginning of
the file. Default is the DOCTYPE line shown below. Max line length
is 80 characters, so use multiple HTMLPre lines if you need
more.
.TP 
HTMLHead
HTMLHead defines HTML code to insert within the
\*(T<<HEAD></HEAD>\*(T> block, immediately after the
\*(T<<TITLE>\*(T> line. Maximum line length is 80
characters, so use multiple lines if needed.
.TP 
HTMLBody
HTMLBody defined the HTML code to be inserted, starting with
the <BODY> tag. If not specified, the default is shown below.
If used, you MUST include your own <BODY> tag as the first
line. Maximum line length is 80 char, use multiple lines if
needed.
.TP 
HTMLPost
HTMLPost defines the HTML code to insert immediately before
the first <HR> on the document, which is just after the title
and "summary period"-"Generated on:" lines. If anything, this should
be used to clean up in case an image was inserted with HTMLBody. As
with HTMLHead, you can define as many of these as you want and they
will be inserted in the output stream in order of appearance. Max
string size is 80 characters. Use multiple lines if you need
to.
.TP 
HTMLTail
HTMLTail defines the HTML code to insert at the bottom of each
HTML document, usually to include a link back to your home page or
insert a small graphic. It is inserted as a table data element (ie:
<TD> your code here </TD>) and is right aligned with the
page. The maximum string size is 80 characters.
.TP 
HTMLEnd
HTMLEnd defines the HTML code to add at the very end of the
generated files. It defaults to what is shown below. If used, you
MUST specify the </BODY> and </HTML> closing tags as the
last lines. The maximum string length is 80 characters.
.SH "GRAPHING OPTIONS"
As distinct from the general Display Options, the Graphing Options
focus on manipulating the various graphs produced.
.TP 
CountryGraph
CountryGraph allows the usage by country graph to be disabled.
Values can be 'yes' or 'no', default is 'yes'.
.TP 
DailyGraph
DailyGraph determines if the daily statistics graph will be
displayed or not. Values may be "yes" or "no". Default is "yes" - do
display the daily graph.
.TP 
HourlyGraph
HourlyGraph determines if the daily statistics graph will be
displayed or not. Values may be "yes" or "no". Default is "yes" - do
display the hourly graph.
.TP 
TopURLsbyHitsGraph
Display a pie chart of the top URLs by HITS
.TP 
TopURLsbyVolGraph
Display a pie chart of the top URLs by HITS
.TP 
TopExitPagesGraph
Display Top Exit Pages Pie Chart. Values may be
\(oqhits\(cq or \(oqvisits\(cq or "no". Default is
"no"

\(oqhits\(cq means order the graph by hits

\(oqvisits\(cq means order the graph by visits
.TP 
TopEntryPagesGraph
Display Top Entry Pages Pie Chart. Values may be
\(oqhits\(cq or \(oqvisits\(cq or "no". Default is
"no"

\(oqhits\(cq means order the graph by hits

\(oqvisits\(cq means order the graph by visits
.TP 
TopSitesbyPagesGraph
Display a pie chart of the Top Sites by Page
Impressions
.TP 
TopSitesbyVolGraph
Display a pie chart of the Top Sites by Page
Impressions
.TP 
TopAgentsGraph
Display a pie chart of the Top User Agents (by pages)
.TP 
GraphLegend
GraphLegend allows the color coded legends to be turned on or
off in the graphs. The default is for them to be displayed. This
only toggles the color coded legends, the other legends are not
changed. If you think they are hideous and ugly, say 'no' here
:)
.TP 
GraphLines
GraphLines allows you to have index lines drawn behind the
graphs. Anything other than "no" will enable the lines.
.TP 
Graph*X and Graph*Y
The following Graph*X and Graph*Y options are used to modify
the sizes of the created charts. The default settings are shown. The
defaults are also the minimum settings. #define GRAPH_INDEX_X 512 /*
px. Default X size (512) */ #define GRAPH_INDEX_Y 256 /* px. Default
Y size (256) */ #define GRAPH_DAILY_X 512 /* px. Daily X size (512)
*/ #define GRAPH_DAILY_Y 400 /* px. Daily Y size (400) */ #define
GRAPH_HOURLY_X 512 /* px. Daily X size (512) */ #define
GRAPH_HOURLY_Y 400 /* px. Daily Y size (400) */ #define GRAPH_PIE_X
512 /* px. Pie X size (512) */ #define GRAPH_PIE_Y 300 /* px. Pie Y
size (300) */
.TP 
GraphIndexX
The main chart on the front page. Summary of all Months.
Default is 512 pixels.
.TP 
GraphIndexY
Default is 256 pixels.
.TP 
GraphDailyX
The Day by Day Summary graph at the start of each Months
Summary. Default is 512 pixels.
.TP 
GraphDailyY
Default is 400 pixels.
.TP 
GraphHourlyX
The Hourly Average graph within each Months Summary. Default
is 512 pixels.
.TP 
GraphHourlyY
Default is 400 pixels.
.TP 
GraphPieX
All pie charts are the same size. Default is 512
pixels.
.TP 
GraphPieY
Default is 300 pixels.
.TP 
Graph and Table Colours
The custom bar graph and pie Colours can be overridden with
these options. Declare them in the standard hexadecimal way - as per
HTML but without the '#'. If none are given, you will get the
default AWFFull colors.
.TP 
ColorHit
Default value is \(oq00805C\(cq (dark green)
.TP 
ColorFile
Default value is \(oq0000FF\(cq (blue)
.TP 
ColorSite
Default value is \(oqFF8000\(cq (orange)
.TP 
ColorKbyte
Default value is \(oqFF0000\(cq (red)
.TP 
ColorPage
Default value is \(oq00E0FF\(cq (cyan)
.TP 
ColorVisit
Default value is \(oqFFFF00\(cq (yellow)
.TP 
PieColor1
Default value is \(oq00805C\(cq (dark green)
.TP 
PieColor2
Default value is \(oq0000FF\(cq (blue)
.TP 
PieColor3
Default value is \(oqFF8000\(cq (orange)
.TP 
PieColor4
Default value is \(oqFF0000\(cq (red)
.SH "GROUP* OPTIONS"
The Group* keywords permit the grouping of similar objects as if
they were one. Grouped records are displayed in the \(oqTop\(cq
tables and can optionally be displayed in bold and/or shaded. Groups
cannot be hidden, and are not counted in the main totals. The Group*
options do not hide the individual items that are members of the Group. If
you wish to hide the records that match - so just the grouping record is
displayed - follow with an identical Hide* keyword with the same value. Or
use the single GroupAndHide* keyword that matches, instead of the Group*
and Hide* combination.
.PP
Group* keywords may have an optional label which will be displayed
instead of the keywords value. The label should be separated from the
value by at least one white-space character, such as a space or
tab.
.PP
The Hide*, Group* and Ignore* and Include* keywords allow you to
change the way Sites, URL's, Referrers, User Agents and User names are
manipulated. The Ignore* keywords will cause AWFFull to completely ignore
records as if they didn't exist (and thus not counted in the main site
totals). The Hide* keywords will prevent things from being displayed in
the 'Top' tables, but will still be counted in the main totals. The Group*
keywords allow grouping similar objects as if they were one. Grouped
records are displayed in the 'Top' tables and can optionally be displayed
in BOLD and/or shaded. Groups cannot be hidden, and are not counted in the
main totals. The Group* options do not, by default, hide all the items
that it matches. If you want to hide the records that match (so just the
grouping record is displayed), follow with an identical Hide* keyword with
the same value. (see example below) In addition, Group* keywords may have
an optional label which will be displayed instead of the keywords value.
The label should be separated from the value by at least one 'white-space'
character, such as a space or tab.
.PP
The value can have either a leading or trailing '*' wildcard
character. If no wildcard is found, a match can occur anywhere in the
string. Given a string \(oqwww.yourmama.com\(cq, the values
\(oqyour\(cq, \(oq*mama.com\(cq and \(oqwww.your*\(cq
will all match.
.TP 
GroupURL
.TP 
GroupSite
.TP 
GroupReferrer
.TP 
GroupUser
.TP 
GroupAgent
.TP 
GroupDomains
The GroupDomains keyword allows you to group individual host
names into their respective domains. The value specifies the level
of grouping to perform, and can be thought of as 'the number of
dots' that will be displayed. For example, if a visiting host is
named cust1.tnt.mia.uu.net, a domain grouping of 1 will result in
just "uu.net" being displayed, while a 2 will result in
"mia.uu.net". The default value of zero disable this feature.
Domains will only be grouped if they do not match any existing
"GroupSite" records, which allows overriding this feature with your
own if desired.
.SH "HIDE* OPTIONS"
The Hide* keywords will prevent things from being displayed in the
\&'Top' tables. The hidden items will still be counted in the main
totals.
.TP 
HideURL
Hide URL matching name.
.TP 
HideSite
Hide site matching name.
.TP 
HideReferrer
Hide referrer matching name.
.TP 
HideUser
.TP 
HideAgent
Hide user agents matching
name.
.TP 
HideAllSites
HideAllSites allows forcing individual sites to be hidden in
the report. This is particularly useful when used in conjunction
with the "GroupDomain" feature, but could be useful in other
situations as well, such as when you only want to display grouped
sites (with the GroupSite keywords...). The value for this keyword
can be either 'yes' or 'no', with 'no' the default, allowing
individual sites to be displayed.
.SH "GROUPANDHIDE* OPTIONS"
All the Hide and Group "name" options can be combined in a single
config line. eg GroupAndHideURL. If you start using the Group* options you
will find that you tend to match every Group* option with a corresponding
Hide* option. The GroupAndHide* options simply short circuit this
unnecessary duplication.
.TP 
GroupAndHideURL
.TP 
GroupAndHideSite
.TP 
GroupAndHideReferrer
.TP 
GroupAndHideUser
.TP 
GroupAndHideAgent
.SH "DATA DUMP OPTIONS"
The Dump* keywords allow the dumping of Sites, URL's, Referrers User
Agents, User names and Search strings to separate tab delimited text
files, suitable for import into most database or spreadsheet
programs.
.TP 
DumpPath
DumpPath specifies the path to dump the files. If not
specified, it will default to the current output directory. Do not
use a trailing slash ('/').
.TP 
DumpHeader
The DumpHeader keyword specifies if a header record should be
written to the file. A header record is the first record of the
file, and contains the labels for each field written. Normally,
files that are intended to be imported into a database system will
not need a header record, while spreadsheets usually do. Value can
be either 'yes' or 'no', with 'no' being the default.
.TP 
DumpExtension
DumpExtension allow you to specify the dump filename extension
to use. The default is "tab", but some programs are picky about the
filenames they use, so you may change it here (for example, some
people may prefer to use "csv").
.TP 
DumpURLs
.TP 
DumpEntryPages
.TP 
DumpExitPages
.TP 
DumpSites
.TP 
DumpReferrers
.TP 
DumpSearchStr
.TP 
DumpUsers
.TP 
DumpAgents
.TP 
DumpCountries
.SH EXAMPLES
Sample Extract of a configuration file:

.nf
\*(T<# The 'auto' value means that AWFFull will try and work out what log format
# you are sending to it. If no joy, AWFFull will immediately exit.

LogType        auto

# OutputDir is where you want to put the output files.  This should
# should be a full path name, however relative ones might work as well.
# If no output directory is specified, the current directory will be used.

OutputDir      .\*(T>
.fi

Minimal configuration file:

.nf
\*(T<# Sample *MINIMAL* AWFFull configuration file
#
# The below settings are the only ones you *really* need to worry about
# when configuring AWFFull. See the sample.conf file for all options if
# the below only serves to whet your appetite.
#
# See awfful(1) or sample.conf for full explanations.

# We can do a little bit each day, or hour...
Incremental             yes

# Your server name to display
HostName                www.my_example.site

##\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
# Use PageType OR NotPageType
# I personally prefer NotPageType \- YMMV!
PageType                htm
PageType                html
PageType                php
#PageType               pl
#PageType               cfm
#PageType               pdf
#PageType               txt
#PageType               cgi
### OR! \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
#NotPageType            gif
#NotPageType            css
#NotPageType            js
#NotPageType            jpg
#NotPageType            ico
#NotPageType            png
##\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-

# Should always fold in Sequence Errors. Logs can be messy...
FoldSeqErr              yes

# If you want to see the country flags, uncomment the following.
# This is the, possibly relative, URL where the flag flies are located.
#FlagsLocation          flags

\*(T>.fi
.SH "SEE ALSO"
awffull(1)
.SH BUGS
None currently known. YMMV....
.PP
Report bugs to \(lahttps://bugs.launchpad.net/awffull\(ra,
or use the email discussion list:
<\*(T<awffull@stedee.id.au\*(T>>
.SH NOTES
In case it is not obvious: AWFFull is a play/pun on the word
\(oqawful\(cq, and is pronounced the same way. Yes it was
deliberate.
.SH REFERENCES
[1] Web Site Measurement Hacks. Eric T. Peterson (and others).
O'Reilly. ISBN 0-596-00988-7.