Toon posts:

[Awstats 6.3 Fedora Core 3]Dirdata error, Permission error

Pagina: 1
Acties:
  • 120 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Goeiemorgen!

Ben nu twee dagen aan het prutsen geweest om Awstats werkende te krijgen op/in Fedora core 3.
De eerste dag werkte perl niet, handmatig installeren werkte niet goed, dus een nieuwe installatie gedaan en dan de ontwikkelingshulpmiddelen mee geinstalleerd, hierin staat Perl.

Ok de tweede dag werkte perl en kreeg ik geen code meer te zien in mn browser als ik awstats uitvoerde. Nu krijg ik errors te zien }:O dat is al wat toch...

iig. ik probeer die erros weg te krijgen dmv. het toewijzen van rechten aan alle mappen die awstats gebruikt, de config files te hernoemen. Log files handmatig aan te maken. Maar nog krijg ik de volgende errors:
code:
1
2
3
4
Error: AWStats database directory defined in config file by 'DirData' parameter (/var/lib/awstats) does not exist or is not writable.

Setup ('/etc/awstats/awstats.awstats.conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).


/var/lib/awstats heb ik volledig toegang gegeven door rechtermuisknop, rechten, en daar alles aan te vinken. Die dirdata map is overigens wel leeg, horen daar de logs te staan?

En dan de volgende ('/etc/awstats/awstats.awstats.conf' file, web server or permissions) may be wrong. foutmelding begrijp ik niet, ook daar heb ik alle rechten aangevinkt, en de documentatie ken ik zowat al uit mn hoofd.

Wie kan mij verder helpen...bedankt.

  • Freezerator
  • Registratie: Januari 2000
  • Laatst online: 23-08 19:27
Met alle rechten aanvinken bedoel je daarmee chmod?

Als welke user run je het script?

Verwijderd

Topicstarter
Freezerator schreef op woensdag 09 februari 2005 @ 09:11:
Met alle rechten aanvinken bedoel je daarmee chmod?

Als welke user run je het script?
Als ik alle rechten aanvink bedoel ik daarmee rechtermuisknop op het bestand of de map, en dan het tab blad rechten, en daar alles aanvinken.

Ik ben ingelogd als root.

Verwijderd

Topicstarter
Inmiddels is het me gelukt om een pagina tevoorschijn te halen, dmv handmatig:
perl awstats.pl -config=www.tsd.be -update
en
perl awstats.pl -config=www.tsd.be -output -staticlinks > awstats.www.tsd.be.html

het configuratie bestand te updaten, en een pagina te maken waarin volgens mij gegevens moesten staan van de mylog.log file, maar deze pagina is leeg dwz. geen gegevens in de tabellen, dit kan kloppen omdat ik de maand februari van het jaar 2005 zie, en de gegevens in de log file zijn van januari 2004..

Maar de foutmeldingen van mijn eerste bericht zijn er nog steeds, dus er is nog maar weinig veranderd.

Verwijderd

Topicstarter
Ik heb het kunnen oplossen de dirdata was in /etc/ maar in de .conf file heb ik ingesteld dat de dirdata="." in dezelfde dir staat als awstats.pl.

Toen werkte de site ineens, alleen werkt het updaten vanaf de site nu nog niet, ik krijg de volgende error:

Error: Couldn't open server log file "/var/log/httpd/mylog.log" : Permission denied

Setup ('/etc/awstats/awstats.www.tsd.be.conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).

die mylog.log daar staan alle gegevens in die awstats moet sorteren en moet laten zin in grafiekjes en dergelijke. Maar vanaf de website krijg ik geen toegang terwijl ik alles 777 chmod gedaan heb.

en in het conf bestand kan ik niks relevants vinden mbt. permissies.

Weet iemand dit misschen wel op te lossen?

Verwijderd

Volgens mij moeten je logs en je datadir bereikbaar zijn voor de webserver (meestal user apache). Je datadir moet tevens schrijfbaar zijn voor user apache. Dus:
code:
1
2
chown -R jegebruikersnaam.apache /var/lib/awstats/datadir
chmod 770 /var/lib/awstats/datadir

Verwijderd

Topicstarter
Verwijderd schreef op woensdag 09 februari 2005 @ 13:19:
Volgens mij moeten je logs en je datadir bereikbaar zijn voor de webserver (meestal user apache). Je datadir moet tevens schrijfbaar zijn voor user apache. Dus:
code:
1
2
chown -R jegebruikersnaam.apache /var/lib/awstats/datadir
chmod 770 /var/lib/awstats/datadir
Ik heb gedaan wat je zei, alleen daarmee was het niet opgelost, het had niet echt met het probleem te maken, Ik ben wel op het idee gekomen door je, om de mylog.log ook in dezelfde map te zetten als awstats.pl. Met als gevolg dat ik dit kreeg te zien:

No qualified records found in log (8 corrupted, 2974 dropped)

Alle records in mylog.log worden verwerpt....
Dit heb ik ook al in de command line gezien, het komt door het log format type.

Dit krijg ik te zien wanneer ik wil updaten vanaf de command line:
This means each line in your web server log file need to have "combined log format" like this:
111.22.33.44 - - [10/Jan/2001:02:14:14 +0200] "GET / HTTP/1.1" 200 1234 "http://www.fromserver.com/from.htm" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"
And this is an example of records AWStats found in your log file (the record number 50 in your log):
2004-01-08 13:19:14 172.16.0.118 GET /asp/home.asp - 80 - 192.168.0.50 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+.NET+CLR+1.1.4322) 200 0 0
Setup ('/etc/awstats/awstats.www.tsd.be.conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).

De log is dus een ander formaat en AWStats kan dit log formaat niet lezen :'(

Nu moet ik dus zorgen dat dat logformaat in mijn log omgezet wordt ofso...ik heb nog geen idee hoe..

Andere ideeen zijn welkom!!

Verwijderd

De eerste melding had dus wel te maken met bestandspermissies ;)

Het probleem dat je logs niet verwerkt kunnen worden heeft o.a. te maken met een instelling in apache. In httpd.conf kun je aangeven wat voor soort logs er weggeschreven moeten worden. Standaard staat dat meen ik op "common", de minst uitgebreide manier.
Meestal wil je bijv je referers ook loggen. Dit kun je doen door voor "combined" te kiezen.
Zet dit bij je (virtual) host in httpd.conf:
code:
1
CustomLog /pad/naar/je/logs/mylog.log combined

In je awstats.conf correspondeert deze instelling met:
code:
1
LogFormat=1

Als je httpd.conf niet kan/mag editen kun je ook kiezen voor "LogFormat=4".

AWStats kan trouwens echt heel veel soorten logs lezen

[ Voor 13% gewijzigd door Verwijderd op 10-02-2005 00:31 ]


Verwijderd

Topicstarter
Daar ga ik eens mee aan de slag, ik heb gisteren een aantal records kunnen toevoegen dmv. een eigen gemaakt log format. Ik moest heel erg rekening houden met de volgorde waarin ik dat log format schreef anders werkte het niet.

Apache is aangepast door ee nconfig file te draaien van awstats, die config file heeft dan in httpd.conf combined logformats geplaatst.

Maar de volgende regel staat er niet tussen dus die zet ik erbij,
code:
1
CustomLog /pad/naar/je/logs/mylog.log combined


Of ik nou logformat 1, 2, 3 of 4 gebruik, bij de 1 heb ik alleen maar corrupted records en bij de ander werkt het helemaal niet, allerlei errors, hopelijk lost die regel in httpd.conf iets op.

bedankt

Verwijderd

Topicstarter
Het is trouwens een logfile van een IIS 6 server, met de volgende dingen aangevinkt:
date time cs-method cs-uri-stem cs-username c-ip cs-version cs(User-Agent) cs(Referer) sc-bytes

En laat Awstats nou net moeite hebben met een logfile van IIS6...

Wanneer ik via de site probeer up te daten krijg ik dit te zien (dus he moet vanuit een terminal, dat werkt wel):
code:
1
Error: Couldn't open file "/var/www/cgi-bin/awstats022005.test.tmp.3216" for write: Permission denied

Maar dit bestand kan ik niet chmodden want het bestaat niet...awstats022005.test.tmp.3216
Er staat wel zoiets:
awstats022005.test.txt


En dit komt ook nog steeds te voorschijn:
Setup ('/etc/awstats/awstats.test.conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).

[ Voor 54% gewijzigd door Verwijderd op 10-02-2005 08:44 . Reden: Paar toevoeginkjes ]


Verwijderd

Je hebt ons fijn op het verkeerde been gezet met je topictitel. Nergens had je het over IIS6 logs.

Feit blijft dat alle meldingen te maken hebben met permissies.
Als je via de console inlogt run je awstats als die user met de bijbehorende permissies.
Geef in je awstats.conf een datadir op waar awstats (lees de webserver!) schrijfrechten heeft.
Pagina: 1