apache2Piwik TypeError first argument must be string or compiled pattern


#1

Hallo,

ich habe bei mir unter Ubuntu Piwik 1.6 fehlerfrei laufen und versuche ein Apache Logfile mit Apache2Piwik (Version 1.0, Juni 2011) zu importieren. Ich habe genau die Anleitung befolgt und verwende Python 2.6 und auch httpagentparser in Version 0.8.2. Dennoch erhalte ich beim Ausführen der apache2piwik.py folgende Fehlermeldung:

Traceback (most recent call last):
  File "apache2piwik.py", line 86, in <module>
    regexpr = re.compile(p.create_regexpr(s.LOG_FORMAT))
  File "/usr/lib/python2.6/re.py", line 190, in compile
    return _compile(pattern, flags)
  File "/usr/lib/python2.6/re.py", line 241, in _compile
    raise TypeError, "first argument must be string or compiled pattern"
TypeError: first argument must be string or compiled pattern

Diesen Fehler erhalte ich auch, wenn ich es mit Python 2.7 und httpagentparser 1.0 probieren. Ich habe gemäß Apache2Piwik Anleitung nur die settings.py editiert. Welche folgendes Aussehen bei mir hat:

LOG_FORMAT = "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
APACHE_LOG_FILES = ['access.log']
CHRONOLOGICAL_ORDER = True
CONTINUE = False
IGNORED_LOGS = ['/admin/']
IGNORED_USER_AGENTS = ['bot','crawl','Bot','spider','Spider']
IGNORED_EXTENSIONS = ['.jpg','.gif','.jpeg','.css','.js','.png','.ico']
DOWNLOADED_EXTENSIONS = ['.zip','.pdf','.doc','.xls','.ppt','.jad','.jar','.cod','.apk']
URL_REGEXPR = '(?P<url>[^;\?]*).*?'
ID_SITE = 2
VISIT_LENGTH = 1800
LIFE = False
FREQUENCY_OF_READING = 1000

Die MySQL Einstellungen erspare ich uns mal, die sind aber definitiv korrekt, denke auch nicht, dass es daran liegt. Mir ist nicht klar, wo ich anfangen soll zu suchen, denn mein Python ist eher schlecht. Hoffe ihr könnt mir einen Tipp geben.

Viele Grüße

lakul


#2

Ich habe spaßenshalber mal die Zeile

LOG_FORMAT = "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""

durch

LOG_FORMAT = ""

ersetzt. Das Skript apache2piwik.py wird jetzt ohne Fehlermeldung aufgeführt es wird aber natürlich nichts in die Piwik DB kopiert, da das Log Format fehlt. Ich habe das Log Format mehrfach kontrolliert, genau so sind die Logs in meinem Apache konfiguriert. Zumal die Beispieldatei der settings.py genau das gleiche Log Format als Beispiel enthält. Könnte es an meiner Logdatei liegen, ist das irgendwas falsch, ich sehe keinen Fehler, hier aber mal eine Beispielzeile:

192.168.1.1 - - [03/Jan/2011:13:02:09 +0100] "GET / HTTP/1.1" 500 657 "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727
; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)"
192.168.1.2 - - [03/Jan/2011:13:05:42 +0100] "GET /pdf/00260547.PDF HTTP/1.1" 500 657 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bo
t.html)"
192.168.1.1 - - [03/Jan/2011:13:05:56 +0100] "GET / HTTP/1.1" 200 6971 "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.5072
7; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)"
192.168.1.1 - - [03/Jan/2011:13:05:57 +0100] "GET /ploneNS4.css HTTP/1.1" 200 794 "http://www.domain.net/" "Mozilla/4.0 (compatible; MSIE
 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C)"
192.168.1.1 - - [03/Jan/2011:13:05:57 +0100] "GET /plonePrint.css HTTP/1.1" 200 1011 "http://www.domain.net/" "Mozilla/4.0 (compatible; M
SIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C
)"

(Peterbo) #3

Bitte mal im englischen Forum posten, hier scheinen keine Experten zu dieser Komponente zu sein. :wink: