# Copyright (c) 2010 Flowerfire, Inc. All Rights Reserved. tinline = { # The name of the log format log.format.format_label = "Know-how Log Format" log.miscellaneous.log_data_type = "http_access" log.miscellaneous.log_format_type = "web_server" # The log is in this format if any of the first ten lines match this regular expression log.format.autodetect_regular_expression = "^[^ ]* [^ ]* .* \\[../.../....:..:..:...*\\] \"[A-Z]* /[^ ]* HTTP[^\"]*\" [0-9]* [-0-9]* *$" # Treat fields surrounded by square brackets (e.g. the date/time field) as a single quoted field. log.format.treat_brackets_as_quotes = "true" log.format.common_log_format = "true" # The format of dates and times in this log log.format.date_format = "dd/mmm/yyyy:hh:mm:ss" log.format.time_format = "dd/mmm/yyyy:hh:mm:ss" # Log fields log.fields = { # hostname = { # label = "$lang_stats.field_labels.hostname" # type = "host" # index = 1 # subindex = 0 # hierarchy_dividers = "." # left_to_right = false # leading_divider = "false" # } # hostname date_time = { label = "$lang_stats.field_labels.date_time" type = "date_time" index = 4 subindex = 1 hierarchy_dividers = "" left_to_right = false leading_divider = "false" } # date_time # operation = { # label = "$lang_stats.field_labels.operation" # type = "flat" # index = 5 # subindex = 1 # } # operation browser_url = { label = "Browser Url" type = "flat" index = 5 subindex = 0 } # browser_url # protocol = { # label = "$lang_stats.field_labels.protocol" # type = "flat" # index = 7 # subindex = 3 # } # protocol server_response = { label = "$lang_stats.field_labels.server_response" type = "response" index = 6 subindex = 0 hierarchy_dividers = "" left_to_right = false leading_divider = "false" } # server_response size = { label = "$lang_stats.field_labels.size" type = "size" index = 7 subindex = 0 hierarchy_dividers = "" left_to_right = false leading_divider = "false" } # size page = { label = "$lang_stats.field_labels.page" type = "page" index = 8 subindex = 1 hierarchy_dividers = "/?" left_to_right = true leading_divider = "true" } # page dst_art = { label = "Dienststellenart" type = "flat" index = 9 subindex = 0 hierarchy_dividers = "" left_to_right = false leading_divider = "false" } # dst_art suchbegriff = { label = "Suchbegriffe" type = "hierarchical" hierarchy_dividers = "/?" left_to_right = true leading_divider = "true" index = 10 } # suchbegriff duration = { label = "Dauer" type = "flat" index = 11 subindex = 0 hierarchy_dividers = "" left_to_right = false leading_divider = "false" } # duration benutzerid_md5 = { label = "benutzerid_md5" type = "flat" index = 12 subindex = 0 } # benutzerid_md5 su_angeklickt_position = { label = "Position Suchergebnis" type = "flat" index = 13 subindex = 0 } # su_angeklickt_position su_angeklickt_aktion = { label = "su_angeklickt_aktion" type = "flat" index = 14 subindex = 0 } # su_angeklickt_aktion su_abgeschickt_anzahl = { label = "Ergebnisse pro Suchbegriff" type = "flat" index = 15 subindex = 0 } # su_abgeschickt_anzahl servername = { label = "Servername" type = "flat" index = 16 subindex = 0 } # Servername vorgaenger = { label = "Vorgaenger" type = "hierarchical" hierarchy_dividers = "/?" left_to_right = true leading_divider = "true" index = 17 } # vorgaenger # Ueber Filter gefuellte Felder feedback = { label = "Feedback" type = "hierarchical" hierarchy_dividers = "/?" left_to_right = true leading_divider = "true" index = 0 } # feedback formular = { label = "formular" type = "flat" index = 0 } # formular su_angeklickt = { label = "angeklickte Suchbegriffe" type = "flat" index = 0 } # su_angeklickt su_angeklickt_typ = { label = "angeklickter Suchbegriff Typ" type = "flat" index = 0 } # su_angeklickt_typ su_abgeschickt = { label = "abgeschickte Suchbegriffe" type = "flat" index = 0 } # su_abgeschickt su_abgeschickt_typ = { label = "abgeschickte Suchbegriffe Typ" type = "flat" index = 0 } # su_abgeschickt_typ su_abgeschickt_aufruf = { label = "abgeschickte Suchbegriffe Aufruf" type = "hierarchical" hierarchy_dividers = "/?" left_to_right = true leading_divider = "true" index = 0 } # su_abgeschickt_aufruf su_ansprechpartner = { label = "Ansprechpartner Suchbegriffe" type = "flat" index = 0 } # su_ansprechpartner su_ansprechpartner_typ = { label = "Ansprechpartner Suchbegriff Typ" type = "flat" index = 0 } # su_ansprechpartner_typ benutzerid = { label = "benutzerid" type = "flat" index = 0 } # benutzerid_5 } # log.fields # Database fields database.fields = { date_time = { label = "$lang_stats.field_labels.date_time" log_field = "date_time" type = "string" suppress_top = 0 suppress_bottom = 3 display_format_type = "date_time" } # date_time day_of_week = { label = "$lang_stats.field_labels.day_of_week" log_field = "day_of_week" type = "string" suppress_top = 0 suppress_bottom = 2 display_format_type = "day_of_week" } # day_of_week hour_of_day = { label = "$lang_stats.field_labels.hour_of_day" log_field = "hour_of_day" type = "string" suppress_top = 0 suppress_bottom = 2 display_format_type = "hour_of_day" } # hour_of_day page = { label = "$lang_stats.field_labels.page" log_field = "page" type = "string" suppress_top = 0 suppress_bottom = 9 display_format_type = "page" } # page file_type = { label = "$lang_stats.field_labels.file_type" log_field = "file_type" type = "string" suppress_top = 0 suppress_bottom = 2 } # file_type # hostname = { # label = "$lang_stats.field_labels.hostname" # log_field = "hostname" # type = "string" # suppress_top = 0 # suppress_bottom = 2 # display_format_type = "hostname" # } # hostname server_response = { label = "$lang_stats.field_labels.server_response" log_field = "server_response" type = "string" suppress_top = 0 suppress_bottom = 2 } # server_response dst_art = { label = "Dienststellenart" log_field = "dst_art" type = "string" suppress_top = 0 suppress_bottom = 2 } # server_response browser_url = { label = "Browser Url" log_field = "browser_url" type = "string" suppress_top = 0 suppress_bottom = 2 } # browser_url suchbegriff = { label = "Suchbegriff" log_field = "suchbegriff" type = "string" suppress_top = 0 suppress_bottom = 9 display_format_type = "page" } # suchbegriff benutzerid = { label = "benutzerid" log_field = "benutzerid" type = "string" suppress_top = 0 suppress_bottom = 2 } # benutzerid servername = { label = "RZ-Servername" log_field = "servername" type = "string" suppress_top = 0 suppress_bottom = 2 } #servername feedback = { label = "Feedback" log_field = "feedback" type = "string" suppress_top = 0 suppress_bottom = 9 display_format_type = "page" } #feedback formular = { label = "Formular" log_field = "formular" type = "string" suppress_top = 0 suppress_bottom = 9 } #formular vorgaenger = { label = "Vorgaenger" log_field = "vorgaenger" type = "string" suppress_top = 0 suppress_bottom = 9 display_format_type = "page" } # suchbegriff su_abgeschickt = { label = "abg. Suchbegriffe" log_field = "su_abgeschickt" suppress_top = 0 suppress_bottom = 2 } # su_abgeschickt su_abgeschickt_aufruf = { label = "abg. Aufruf" log_field = "su_abgeschickt_aufruf" type = "string" suppress_top = 0 suppress_bottom = 9 display_format_type = "page" } # su_abgeschickt_aufruf su_abgeschickt_typ = { label = "abg. Typ" log_field = "su_abgeschickt_typ" suppress_top = 0 suppress_bottom = 2 } # su_abgeschickt_typ su_abgeschickt_anzahl = { label = "abg. Anzahl" log_field = "su_abgeschickt_anzahl" type = "string" suppress_top = 0 suppress_bottom = 2 } #su_abgeschickt_anzahl su_angeklickt_position = { label = "angekl. Position" log_field = "su_angeklickt_position" type = "string" suppress_top = 0 suppress_bottom = 2 } # su_angeklickt_position su_angeklickt_aktion = { label = "angekl. Suchaktion" log_field = "su_angeklickt_aktion" type = "string" suppress_top = 0 suppress_bottom = 2 } # su_angeklickt_aktion su_angeklickt = { label = "angekl. Suchbegriffe" log_field = "su_angeklickt" suppress_top = 0 suppress_bottom = 2 } # su_angeklickt su_angeklickt_typ = { label = "angekl. Typ" log_field = "su_angeklickt_typ" suppress_top = 0 suppress_bottom = 2 } # su_angeklickt_typ su_ansprechpartner = { label = "Ansprechpartner Suchbegriffe" log_field = "su_ansprechpartner" suppress_top = 0 suppress_bottom = 2 } # su_ansprechpartner su_ansprechpartner_typ = { label = "Ansprechpartner Suchbegriff Typ" log_field = "su_ansprechpartner_typ" suppress_top = 0 suppress_bottom = 2 } # su_ansprechpartner_typ } # database.fields # Log Filters log.filters = { 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 remove_hits = { label = "Loeschen ueberfluessige Hits" comment = "Loeschen ueberfluessige Hits" value = "if ((ends_with(browser_url,'jpg')) or (ends_with(browser_url,'gif')) or (ends_with(browser_url,'ico')) or (ends_with(browser_url,'png')) or (ends_with(browser_url,'css')) or (ends_with(browser_url,'tiff')) or (ends_with(browser_url,'swf')) or (ends_with(browser_url,'js')) or (ends_with(browser_url,'htc')) or (ends_with(browser_url,'bmp')) or (!starts_with(page,'/')) ) then 'reject'" } # remove_hit detect_page_views = { label = '$lang_admin.log_filters.detect_page_views_label' comment = '$lang_admin.log_filters.detect_page_views_comment' value = "if (ends_with(browser_url, 'css' )) then page_views = 0; else page_views = 1;" } # detect_page_views cut_benutzerid = { label = "Kuerzen Benutzerid" comment = "Kuerzen der MD5-Benutzerid" value = "benutzerid = substr(replace_all(benutzerid_md5,'-',''),0,9)" } clean_su_abgeschickt_anzahl = { label = "abg. Suche Aufruf leeren" comment = "abg. Suche Aufruf leeren" value = "if (su_abgeschickt_anzahl eq '-') then (su_abgeschickt_anzahl = '';)" } # clean_su_abgeschickt_anzahl clean_su_angeklickt_position = { label = "Position Suchergebnis leeren" comment = "Position Suchergebnis leeren" value = "if (su_angeklickt_position eq '-') then (su_angeklickt_position = '';)" } # clean_su_angeklickt_position clean_su_angeklickt_aktion = { label = "Suchaktion leeren" comment = "Suchaktion leeren" value = "if (su_angeklickt_aktion eq '0') then (su_angeklickt_aktion = '';)" } # clean_su_angeklickt_aktion fill_feedback_a = { label = "Feedback senden fuellen" comment = "Feedback senden fuellen" value = "if (starts_with(page, '/intranet/funktionen/feedback/') and ends_with(page, '/form_absenden')) then (feedback = substr(page, 29);page = '/intranet/funktionen/feedback/feedback_absenden.html';formular = 'feedback/senden';)" } # fill_feedback_a fill_feedback_b = { label = "Feedback anzeigen fuellen" comment = "Feedback anzeigen fuellen" value = "if (starts_with(page, '/intranet/funktionen/feedback/') and ends_with(page, '/form_anzeigen')) then (feedback = substr(page, 29);page = '/intranet/funktionen/feedback/feedback_anzeigen.html';formular = 'feedback/anzeigen';)" } # fill_feedback_b fill_su_abgeschickt_aufruf = { label = "Suche abgeschickt - Aufruf" comment = "Suche abgeschickt Aufruf" value = "if (starts_with(page, '/intranet/funktionen/suche/')) then (su_abgeschickt_aufruf = substr(page, 27);)" } # fill_su_abgeschickt_typ = { label = "Suche abgeschickt - Typ" comment = "Suche abgeschickt Typ" value = "if (starts_with(su_abgeschickt_anzahl, '/')) then ( su_abgeschickt_typ = substr(su_abgeschickt_anzahl, 1, last_index(su_abgeschickt_anzahl, '/')-1); su_abgeschickt_anzahl = substr(su_abgeschickt_anzahl,last_index(su_abgeschickt_anzahl, '/') + 1) )" } # fill_su_angeklickt_typ_organisch = { label = "Suche angeklickt Typ organisch" comment = "Suche angeklickt Typ organisch" value = "if (starts_with(suchbegriff, '/angeklickte_suchen/organisch/')) then (su_angeklickt_typ = 'organisch';su_angeklickt = substr(suchbegriff, 30);)" } # fill_su_angeklickt_typ_gebucht = { label = "Suche angeklickt Typ gebucht" comment = "Suche angeklickt Typ gebucht" value = "if (starts_with(suchbegriff, '/angeklickte_suchen/gebucht/')) then (su_angeklickt_typ = 'gebucht';su_angeklickt = substr(suchbegriff, 28);)" } # fill_su_angeklickt_typ_navigation = { label = "Suche angeklickt Typ navigation" comment = "Suche angeklickt Typ navigation" value = "if (starts_with(suchbegriff, '/angeklickte_suchen/navigation/')) then (su_angeklickt_typ = 'navigation';su_angeklickt = substr(suchbegriff, 31);)" } # fill_su_ansprechpartner_typ_name = { label = "Suche ansprechpartner Typ name" comment = "Suche ansprechpartner Typ name" value = "if (starts_with(suchbegriff, '/ansprechpartner/name/abgeschickte_suchen/')) then (su_ansprechpartner_typ = 'name';su_ansprechpartner = substr(suchbegriff, 42);)" } # fill_su_ansprechpartner_typ_dst = { label = "Suche ansprechpartner Typ dst" comment = "Suche ansprechpartner Typ dst" value = "if (starts_with(suchbegriff, '/ansprechpartner/dienststelle/abgeschickte_suchen')) then (su_ansprechpartner_typ = 'dst';su_ansprechpartner = substr(suchbegriff, 50);)" } # fill_su_ansprechpartner_typ_taetigkeit = { label = "Suche ansprechpartner Typ taetigkeit" comment = "Suche ansprechpartner Typ taetigkeit" value = "if (starts_with(suchbegriff, '/ansprechpartner/taetigkeit/abgeschickte_suchen')) then (su_ansprechpartner_typ = 'taetigkeit';su_ansprechpartner = substr(suchbegriff, 48);)" } # fill_su_abgeschickt = { label = "Suche abgeschickt" comment = "Suche abgeschickt" value = "if (starts_with(suchbegriff, '/abgeschickte_suchen/')) then (su_abgeschickt = substr(suchbegriff, 21);)" } # } # log.filters log.field_options = { sessions_page_field = "page" sessions_visitor_id_field = "benutzerid" sessions_event_field = "page_views" } # log.field_options database.numerical_fields = { 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 = "benutzerid" type = "unique" display_format_type = "integer" } # visitors size = { label = "Dateigroesse" default = false requires_log_field = true log_field = "size" type = "float" display_format_type = "bandwidth" } # size average_size = { label = "Durchschnittliche Dateigroesse" default = false log_field = "size" requires_log_field = false type = "float" aggregation_method = "average" average_denominator_field = "hits" display_format_type = "bandwidth" } # average_duration duration = { label = "Dauer" default = false requires_log_field = true type = "float" display_format_type = "duration_compact" } # duration average_duration = { label = "Durchschnittliche Dauer" default = false log_field = "duration" requires_log_field = false type = "float" aggregation_method = "average" average_denominator_field = "hits" display_format_type = "duration_compact" } # average_duration } # database.numerical_fields create_profile_wizard_options = { date_time_tracking = true host_tracking = true ######### START OF FINAL_STEP CODE final_step = ` include "templates.admin.profiles.setup_reports_util"; string profile = "profiles." . volatile.new_profile_name; # Remove non-essential database fields to reduce size and complexity # avoids creating reports for these items delete_database_field(profile, 'suchbegriff'); #delete_database_field(profile, 'benutzerid'); # Start with the standard reports based on remaining DB fields add_standard_reports(profile); # Set sessions defaults (profile . ".statistics.miscellaneous.session_timeout") = "1800"; (profile . ".statistics.miscellaneous.remove_reloads_from_sessions") = "false"; # enable date column on log detail report (profile . ".statistics.reports.log_detail.report_elements.log_detail.columns.date_time.visible") = "true"; (profile . ".statistics.reports.log_detail.report_elements.log_detail.columns.benutzerid.visible") = "false"; (profile . ".statistics.reports.individual_sessions.report_elements.individual_sessions.columns.1.visible") = "false"; # create a domain to category xref group # add_field_to_xref_group(profile, "angeklickte_suche", "date_time"); # add_field_to_xref_group(profile, "angeklickte_suche", "page_views"); # add_field_to_xref_group(profile, "angeklickte_suche", "visitors"); # add_field_to_xref_group(profile, "angeklickte_suche", "su_angeklickt"); # add_field_to_xref_group(profile, "angeklickte_suche", "su_angeklickt_typ"); # add_field_to_xref_group(profile, "angeklickte_suche", "su_angeklickt_position"); # add_field_to_xref_group(profile, "angeklickte_suche", "su_angeklickt_aktion"); # add_field_to_xref_group(profile, "angeklickte_suche", "su_abgeschickt_anzahl"); ` ######### END OF FINAL_STEP CODE # How the reports should be grouped in the report menu report_groups = { overview = true date_time_group = { date_time = true days = true day_of_week = true hour_of_day = true } content_group = { page = true file_type = true su_abgeschickt = true su_abgeschickt_aufruf = true su_abgeschickt_anzahl = true su_abgeschickt_typ = true su_angeklickt = true su_angeklickt_typ = true su_angeklickt_position = true su_angeklickt_aktion = true su_ansprechpartner = { label = "Anspr.-Suchbegriffe" database_field_name = "su_ansprechpartner" } su_ansprechpartner_typ = { label = "Anspr.-Suchart" database_field_name = "su_ansprechpartner_typ" } formular = true feedback = true vorgaenger = true dst_art = true servername = true server_response = true benutzerid = false browser_url = true } } # report_groups } # create_profile_wizard_options not_supported = { } # not_supported } # tinline