2017-01-24 2 views
0

Ich versuche, große Apache-Logs zu analysieren, aber import_logs.py nicht mit diesem Fehler:Import_logs.py schlägt fehl, wenn ein große Apache Zugriffsprotokoll zu analysieren versuchen, (größer als 900 MB)

2017-01-23 18: 30: 39245: [INFO] Max Anzahl der Versuche erreicht, Server nicht erreichbar _

Fatal error: HTTP Error 500 Internal Server Error, response:

{"status":"error","tracked":0,"invalid":0,"invalidindices":[]}_ You

can restart the import of

"/awdata/piwik/cosmote/geratgweb04/www.cosmote.grwith_ssl-access.log-20170123" from the point it failed by specifying --skip=78454 on the command line.

ich eine VM mit 8 CPUs und 8 GB mem verwenden!.

Meine OS-Version ist RHEL 7.3,

mit Apache-Version ist Apache/2.4.6 (Red Hat Enterprise Linux),

PHP ist PHP 7.0.14 und MariaDB Version ist 5.5.52 Piwik Version 3.0.1

Der Befehl ich verwende ist:

/var/www/html/zak/piwik/misc/log-analytics/import_logs.py --url=http://middlinf.ote.gr:81/piwik/ --idsite=6 --recorders=8 --enable-http-errors --enable-http-redirects --enable-static /awdata/piwik/cosmote/geratgweb04/www.cosmote.gr_with_ssl-access.log-2017--retry-max-attempts=20 

Apache Fehlerprotokoll zeigt:

[Di Jan 24 13: 44: 33.855134 2017] [: Fehler] [pid 17456: tid 140544525190912] [Client 172.18.20.26:16610] Fehler in Piwik (Tracker): Fehlerabfrage: SQLSTATE [40001]: Serialisierungsfehler : 1213 Deadlock gefunden, wenn versucht wird, eine Sperre zu erhalten; versuchen einen Neustart Transaktion Bei der Abfrage:

UPDATE piwik_log_visit SET idvisitor = ?, user_id = ?, 
    visit_last_action_time = ?, visit_exit_idaction_url = ?, 
    visit_total_actions = visit_total_actions + 1 , 
    visit_total_interactions = visit_total_interactions + 1 , 
    visit_total_time = ? 
    WHERE idsite = ? AND idvisit = ? 

Parameter: array (0 => '\ XA6 \ x96 \ xbc \ XeF \ XB9 \ xde \ xf5', 1 => ' ""', 2 => ‚2017 -01-23 08.14.43' , 3 => 47298, 4 => 0, 5 => 4, 6 => 11224,)

Und:

[Di 24. Januar 13.51 Uhr: 58.582401 2017] [: Fehler] [pid 18419: tid 140544525190912] [Client 172.18.20.26:18232] Fehler in Piwik (Tracker): Fehlerabfrage: SQLSTATE [HY000]: Allgemeiner Fehler: 1205 Wartezeit überschritten überschritten; versuchen einen Neustart Transaktion Bei der Abfrage:

UPDATE piwik_log_visit SET idvisitor = ?, user_id = ?, 
    visit_last_action_time = ?, visit_exit_idaction_url = ?, 
    visit_total_actions = visit_total_actions + 1 , 
    visit_total_interactions = visit_total_interactions + 1 , 
    visit_total_time = ? 
    WHERE idsite = ? AND idvisit = ? 

Parameter: array (0 => '\ XA6 \ x96 \ xbc \ XeF \ XB9 \ xde \ xf5', 1 => ' ""', 2 => ‚2017 -01-23 08.42.33' , 3 => 49791, 4 => 242, 5 => 4, 6 => 11371,)>

and mariadb log is showing: 

Time: 17:00:46 
[email protected]: root[root] @ localhost [127.0.0.1] 
Thread_id: 1691 Schema: piwik_db QC_hit: No 
Query_time: 3.858223 Lock_time: 0.000060 Rows_sent: 1 Rows_examined: 1 
 SET timestamp=1485187246; 
    SELECT visit_last_action_time, visit_first_action_time, idvisitor, 
idvisit, user_id, visit_exit_idaction_url, visit_exit_idaction_name, 
visitor_returning, visitor_days_since_first, visitor_days_since_order, 
visitor_count_visits, visit_goal_buyer, location_country, 
location_region, location_city, location_latitude, location_longitude, 
referer_name, referer_keyword, referer_type, idsite, 
visit_entry_idaction_url, visit_total_actions, 
visit_total_interactions, visit_total_searches, config_device_brand, 
config_device_model, config_device_type, visit_total_events, 
visit_total_time, location_ip, location_browser_lang, custom_var_k1, 
custom_var_v1, custom_var_k2, custom_var_v2, custom_var_k3, 
custom_var_v3, custom_var_k4, custom_var_v4, custom_var_k5, 
custom_var_v5 FROM piwik_log_visit 
WHERE visit_last_action_time >= '2017-01-22 05:14:21' 
    AND visit_last_action_time <= '2017-01-22 06:14:21' 
    AND idsite = '6' AND idvisitor = ' 
ORDER BY visit_last_action_time DESC 

habe ich einige der Forschung in den Foren fand aber nichts Interessantes. Haben Sie Vorschläge?

Vielen Dank im Voraus.

-Thanassis

Antwort

0

Bitte SHOW CREATE TABLE piwik_log_visit liefern. Ich vermute, dass Sie das zusammengesetzte

fehlen
INDEX(idsite, idvisit) 

(Die Spalten in beliebiger Reihenfolge sein kann.)

Für

WHERE visit_last_action_time >= '2017-01-22 05:14:21' 
    AND visit_last_action_time <= '2017-01-22 06:14:21' 
    AND idsite = '6' AND idvisitor = ' 

Sie brauchen INDEX(idsite, idvisitor, visit_last_action_time), wobei Sie zuletzt den Bereich Spalte haben.

Haben Sie bemerkt, dass dieser Bereich 3601 Sekunden umfasst? Ich empfehle dieses Muster aus verschiedenen Gründen:

WHERE visit_last_action_time >= '2017-01-22 05:14:21' 
    AND visit_last_action_time < '2017-01-22 05:14:21' + INTERVAL 1 HOUR 
+0

Vielen Dank für Ihre Antwort. Hier ist die Ausgabe von SHOW CREATE TABLE piwik_log_visit. https://docs.google.com/document/d/1po0mmh9oxXXmCebns9392fxRpzPHWEYGd02eyYO6HjY/edit Es gibt keinen solchen Index. Ich werde versuchen, es zu erstellen und den Protokollimport erneut auszuführen. Ich werde dich bald aktualisieren. Bezüglich des Intervallmusters bin ich mir nicht sicher, wie es zu tun ist, da es interanlly vom piwik Befehl import_logs.py getan wird. Es ist keine benutzerdefinierte Abfrage. –

+0

Beschweren Sie sich bei Piwik. –

Verwandte Themen