[yaala] Fwd: yaala help request

qMax yaala@verplant.org
Wed, 2 Apr 2003 14:58:50 +0600


Hi.

Message was about yaala 0.6.2 reporting error for "select: bytes BY date";

Yaala 0.6.3 cannot parse it to, because parse_select gets string
spacestripped - 'bytesbybytes'.
Please, take a look.

I'm currently working on 'true' lexical analyser and 'compiler' for YAQL.
(Regexp matching technique will fail very soon.)

From: Andrew Kornilov <andriy@bit.te.ua>
Date: Tuesday, April 01, 2003, 1:55:31 PM

===8<==============Original message text===============
##################################################
#    yaala 0.6.2 config               2003-03-11 #
#---====================-------------------------#
# For exact instructions please see the README   #
# and the notes above each entry.                #
##################################################
# $Id: config,v 1.3 2003/03/11 22:17:53 octo Exp $

# Tells yaala the directory to save the html pages in.
# You should manually copy .gif and .css there from html
# directory.
# Default is 'reports'
directory: 'reports';

# Here you can choose between the ``new'' Combined-output module and the
# Classic-output which emulates 0.4.x behaviour.
# Default is to use 'Combined'
report: 'Combined';

# The module used for parsing the logfile(s)
# The modules coming with this package are:
# - Bind9
# - Common
# - Ncsa
# - Wnserver
# - Squid
# - Xferlog
# Default: 'Common'

logtype: Ncsa;

#########################################################################
#    Output                                                             #
#---========------------------------------------------------------------#
# The directive 'select' selects data to be printed in the report.      #
#                                                                       #
# First you have to know that there are two types of fields: normal     #
# fields (sometimes also called 'key') and aggregations. An aggregation #
# is basically everything you can sum up. In a webserver logfile this   #
# would be the amount of bytes transferred and the number of requests.  #
# The keyfields is everything else, e.g. the status code, because it    #
# doesn't make sense to sum it up.                                      #
#                                                                       #
# The syntax for select-statements is a bit like SQL. A basic select    #
# looks as follows:                                                     #
#   select: aggregation BY field;                                       #
#                                                                       #
# This displays, for example, the amount of bytes transferred on each   #
# day. For more detailed output you can select more than one            #
# (key)field. Right now up to three are supported. The fields have to   #
# be comma-seperated:                                                   #
#   select: aggregation BY field0, field1, field2;                      #
#                                                                       #
# Ok, now you might only be interested in a part of all the requests.   #
# For example you might wonder, how many times google has visited each  #
# file. You can do this like this:                                      #
#   select: requests BY file WHERE host =~ google;                      #
#                                                                       #
# Or, more general like this:                                           #
#   select: aggregation BY field[, field ..] WHERE field <CMP> value;   #
#                                                                       #
# '<CMP>' is the rule how to match the values. Methods implemented are: #
# - '=='        equal                                                   #
# - '!='        not equal                                               #
# - '=~'        regular expression              (non-numeric only)      #
# = '!~'        negated regular expression      (non-numeric only)      #
# - '<', '>'    lesser/greater than                                     #
# - '<=', '>='  lesser/greater or equal                                 #
#                                                                       #
#########################################################################

select: bytes  BY  date;

# Fields provided by the 'Bind9' parser:
# Aggregations:
# - requests
# Keyfields:
# - date
# - hour
# - client
# - query
# - class
# - type
# - severity
# - category

# Fields provided by the 'Common' parser:
# Aggregations:
# - bytes
# - requests
# Keyfields:
# - date
# - file
# - host
# - hour
# - status
# - tld

# Fields provided by the 'Ncsa' parser:
# Aggregations:
# - bytes
# - requests
# Keyfields:
# - browser
# - date
# - file
# - host
# - hour
# - os
# - referer
# - status
# - tld
# - user
# - virtualhost

# Fields provided by the 'Squid' parser:
# Aggregations:
# - bytes
# - elapsed
# - requests
# Keyfields:
# - client
# - date
# - hierarchycode
# - hour
# - httpstatus
# - method
# - mime
# - peer
# - protocol
# - resultcode
# - server

# Fields provided by the 'Xferlog' parser:
# Aggregations:
# - bytes
# - count
# Keyfields:
# - host
# - user
# - access_mode
# - date
# - hour
# - file
# - completion_status
# - direction
# - transfer_type
# - transfer_time
# - special_action

# Fields provided by the 'Netacct' parser:
# Please check/edit netacct.config, too!!
# (EXPERIMENTAL!)
# Aggregations:
# - bytes
# - packetcount
# - connections
# Keyfields:
# - date
# - destination
# - destinationport
# - hour
# - interface
# - month
# - protocol
# - source
# - sourceport

##################################################
#    filtering                                   #
#---===========----------------------------------#
# These options adjust filtering data which      #
# appear in reports.                             #
##################################################

# Wether or not yaala shall try to lookup domain names of ip adresses.
# Set to 'true' or 'false'. Default is not to.
#reverse_lookup: 'true';

# Sets how many subdomains of a host should be displayed. "1" means only
# the domain (plus the top-level domain), e.g. "example.com", "2" would be
# "subdomain.example.com". Set zero to get the full length of a hostname.
# Defaults to "1"
#host_width: 1;

##################################################
#    HTML                                        #
#---======---------------------------------------#
# These options affects html files generation,   #
# mostly - the HEAD section.                     #
##################################################

# If u're going to browse html pages from FILES
# rather then via http AND on OS with another
# default charset, specify charset of your html
# pages to put into META http-equiv tag.
# With webserver, proper charset SHOULD be passed 
# in http header by server.
# Default is 'iso-8859-1'.
#html_charset: iso-8859-1;

# URL to css file with style definition for
# report pages. Goes linked it from html head.
# You may put here an url or path to other css file,
# (maybe - site-wide or reports-wide)
# default is 'style.css' (should be copied where reports lie)
#html_stylesheet: '/default.css';
#html_stylesheet: '/yaala-reports/style.css';
html_stylesheet: 'style.css';

# The following two options control the size of the graphs generated.
graph_height: 250;
graph_width: 500;

-- 
Andrew Kornilov

===8<===========End of original message text===========



-- 
Best regards,
 qMax                            mailto:qMax@mediasoft.ru