netilla = { # The name of the log format log.format.format_label = "Netilla Log Format" log.miscellaneous.log_data_type = "syslog_required" log.miscellaneous.log_format_type = "internet_device" # The log is in this format if any of the first 100 lines match this regular expression log.format.autodetect_regular_expression = "(CROND\\[|mad:|thin\\[|sendmail\\[)" # log.format.autodetect_regular_expression = "(thin\\[[0-9]+\\]: Started emulator session for |mad: Login Successful: Realm= |rppd: Result=)" log.format.autodetect_lines = 100 # All log field parsing will be done using the parsing filters log.format.parse_only_with_filters = "true" # A log entry is called an event statistics.miscellaneous.entry_name = "events" # Log fields log.fields = { operation = { label = "$lang_stats.field_labels.operation" type = "flat" index = 0 subindex = 0 } # operation realm = { label = "$lang_stats.field_labels.realm" type = "flat" index = 0 subindex = 0 } # realm user = { label = "$lang_stats.field_labels.user" type = "flat" index = 0 subindex = 0 } # user application = { label = "$lang_stats.field_labels.application" type = "flat" index = 0 subindex = 0 } # application tarantella_server = { label = "$lang_stats.field_labels.tarantella_server" type = "flat" index = 0 subindex = 0 } # tarantella_server application_server = { label = "$lang_stats.field_labels.application_server" type = "flat" index = 0 subindex = 0 } # application_server client = { label = "$lang_stats.field_labels.client" type = "flat" index = 0 subindex = 0 } # client security_method = { label = "$lang_stats.field_labels.security_method" type = "flat" index = 0 subindex = 0 } # security_method result = { label = "$lang_stats.field_labels.result" type = "flat" index = 0 subindex = 0 } # result host = { label = "$lang_stats.field_labels.host" type = "flat" index = 0 subindex = 0 } # host page = { label = "$lang_stats.field_labels.page" type = "page" index = 0 subindex = 0 hierarchy_dividers = "/" left_to_right = true leading_divider = "true" } # page ip = { label = "$lang_stats.field_labels.ip" type = "host" index = 0 subindex = 0 hierarchy_dividers = "." left_to_right = false leading_divider = "false" } # ip port = { label = "$lang_stats.field_labels.port" type = "flat" index = 0 subindex = 0 } # port message = { label = "$lang_stats.field_labels.message" type = "flat" index = 0 subindex = 0 } # message } # log.fields # # Log Parsing Filters log.parsing_filters = { # Parse mad line 1 = { label = "1" comment = "" value = "collect_fields_using_regexp('()mad: (Login) Successful: Realm=\\'([^\\']*)\\' User=\\'([^\\']*)\\'', '*KEY*,operation,realm,user')" } # 1 # Parse thin line 2 = { label = "2" comment = "" value = "collect_fields_using_regexp('()thin\\\\[[0-9]+\\\\]: (Started emulator session) for ([^ ]+)\\\\. Application: (.*) Tarantella server: (.*) Application server: (.*) Client: ([0-9.]+) Security method: (.*)$', '*KEY*,operation,user,application,tarantella_server,application_server,client,security_method')" } # 2 # Parse thin line 2a = { label = "2" comment = "" value = "collect_fields_using_regexp('()thin\\\\[[0-9]+\\\\]: (Started emulator session) for ([^ ]+)\\\\. Application: (.*) Application server: (.*) Client: ([0-9.]+) Security method: (.*)$', '*KEY*,operation,user,application,application_server,client,security_method')" } # 2 # Parse rppd line 3 = { label = "3" comment = "" value = "collect_fields_using_regexp('()(rppd): Result=([^ ]+) R=([^ ]+) U=([^ ]+) H=([^ ]+) Pa=([^ ]+) I=([^ ]+) Po=([^ ]+) Pr=([^ ]+) Msg=([^ ]+)', '*KEY*,operation,result,realm,user,host,page,ip,port,protocol,message')" } # 3 # Accept rppd, mad, or thin entries 4 = { label = "4" comment = "" value = "accept_collected_entry_using_regexp('()(rppd|mad|thin\\\\[[0-9]+\\\\]: Started)', false)" } # 4 } # log.parsing_filters # Database fields database.fields = { operation = { label = "$lang_stats.field_labels.operation" log_field = "operation" type = "string" suppress_top = 0 suppress_bottom = 2 } # operation realm = { label = "$lang_stats.field_labels.realm" log_field = "realm" type = "string" suppress_top = 0 suppress_bottom = 2 } # realm user = { label = "$lang_stats.field_labels.user" log_field = "user" type = "string" suppress_top = 0 suppress_bottom = 2 } # user application = { label = "$lang_stats.field_labels.application" log_field = "application" type = "string" suppress_top = 0 suppress_bottom = 2 } # application tarantella_server = { label = "$lang_stats.field_labels.tarantella_server" log_field = "tarantella_server" type = "string" suppress_top = 0 suppress_bottom = 2 } # tarantella_server application_server = { label = "$lang_stats.field_labels.application_server" log_field = "application_server" type = "string" suppress_top = 0 suppress_bottom = 2 } # application_server client = { label = "$lang_stats.field_labels.client" log_field = "client" type = "string" suppress_top = 0 suppress_bottom = 2 } # client security_method = { label = "$lang_stats.field_labels.security_method" log_field = "security_method" type = "string" suppress_top = 0 suppress_bottom = 2 } # security_method result = { label = "$lang_stats.field_labels.result" log_field = "result" type = "string" suppress_top = 0 suppress_bottom = 2 } # result host = { label = "$lang_stats.field_labels.host" log_field = "host" type = "string" suppress_top = 0 suppress_bottom = 2 } # host page = { label = "$lang_stats.field_labels.page" log_field = "page" type = "string" suppress_top = 0 suppress_bottom = 3 display_format_type = "page" } # page ip = { label = "$lang_stats.field_labels.ip" log_field = "ip" type = "string" suppress_top = 0 suppress_bottom = 2 } # ip port = { label = "$lang_stats.field_labels.port" log_field = "port" type = "string" suppress_top = 0 suppress_bottom = 2 } # port message = { label = "$lang_stats.field_labels.message" log_field = "message" type = "string" suppress_top = 0 suppress_bottom = 2 } # message } # database.fields # Log Filters log.filters = { # This filter uses the "user" field as the visitor id. remove_query = { label = "$lang_admin.log_filters.remove_query_label" comment = "$lang_admin.log_filters.remove_query_comment" value = "if (contains(page, '?')) then page = substr(page, 0, index(page, '?') + 1) . '(parameters)';" } # remove_query detect_page_views = { label = '$lang_admin.log_filters.detect_page_views_label' comment = '$lang_admin.log_filters.detect_page_views_comment' value = "if ((file_type eq 'JPEG') or (file_type eq 'JPG') or (file_type eq 'GIF') or (file_type eq 'ICO') or (file_type eq 'PNG') or (file_type eq 'CSS') or (file_type eq 'SWF') or (file_type eq 'JS')) then page_views = 0; else page_views = 1;" } # detect_page_views strip_non_page_views = { label = '$lang_admin.log_filters.strip_non_page_views_label' comment = '$lang_admin.log_filters.strip_non_page_views_comment' value = "if (page_views == 0) then page = substr(page, 0, last_index(page, '/') + 1) . '(nonpage)';" } # strip_non_page_views # not_authenticated = { # label = "$lang_admin.log_filters.not_authenticated_label" # comment = "$lang_admin.log_filters.not_authenticated_comment" # value = "if (authenticated_user eq '-') then authenticated_user = '(not authenticated)';" # } # not_authenticated mark_entry = { label = '$lang_admin.log_filters.mark_entry_label' comment = '$lang_admin.log_filters.mark_entry_comment' value = 'if (operation ne "(empty)") then events = 1;' } # mark_entry } # log.filters log.field_options = { sessions_page_field = "page" sessions_visitor_id_field = "user" sessions_event_field = "page_views" } # log.field_options database.numerical_fields = { events = { label = "$lang_stats.field_labels.events" default = false requires_log_field = false type = "int" display_format_type = "integer" entries_field = true } # events page_views = { label = "$lang_stats.field_labels.page_views" default = true requires_log_field = false type = "int" display_format_type = "integer" } # page_views visitors = { label = "$lang_stats.field_labels.visitors" default = false requires_log_field = true log_field = "user" type = "unique" display_format_type = "integer" } # visitors } # database.numerical_fields create_profile_wizard_options = { host_tracking = true # How the reports should be grouped in the report menu report_groups = { date_time_group = "" operation = true realm = true user = true application = true tarantella_server = true application_server = true client = true security_method = true result = true host = true page = true ip = true port = true message = true } # report_groups } # create_profile_wizard_options not_supported = { bandwidth = true } # not_supported } # netilla