Just nu i M3-nätverket
Gå till innehåll

Apache fyller hårddisken!


M a k a r o n

Rekommendera Poster

M a k a r o n

Jag har laddat ner Apache och PHP och nu undrar jag varför Apache gör min hårddisk full hela tiden med en fil som blir flera GB stor.

 

Jag har en hårddisk som är delad i två delar. Den ena (C:) som jag har operativsystemet på (Windows XP) är 38,7 GB och den andra (D:) som jag bara har Apache och PHP på är 12,5 GB.

 

Apache fyller hela tiden den lilla hårddisk-delen (D:) med filen D:\logs\error.log som blir flera GB stor.

 

När den är så full går det inte att få plats med att göra nya filer på D:. Det går inte att radera filen (se bild). Det går inte att öppna filen. För att få utrymme på D: måste jag avinstallera Apache och installera det igen.

 

Vet någon varför det blir så och hur jag ska göra för att slippa installera om Apache hela tiden?

 

[bild bifogad 2007-02-13 18:12:28 av MAKARON]

918585_thumb.jpg

Länk till kommentar
Dela på andra webbplatser

Om du stoppar Apache borde det gå att ta bort errorloggen.

 

Men det är ju förstås intressant att se vad som finns i den, det verkar ju vara något som är fel (milt sagt).

 

Länk till kommentar
Dela på andra webbplatser

M a k a r o n

Tack för tipset! Jag provade att stoppa Apache och jag behövde inte ta bort den, den försvann av sig själv. Sen när jag startade kom den tillbaka men tog bara 1 kB.

 

Men jag undrar hur den kan bli så stor på så kort tid.

 

Filen verkar innehålla beskrivningar för massa fel som har blivit.

 

Länk till kommentar
Dela på andra webbplatser

Om du kan klistra in en del av den här kanske det syns varför det blir så.

 

Använd LOG-taggar när du klistrar in resultatet om det blir långt!

 

Länk till kommentar
Dela på andra webbplatser

M a k a r o n

Filen har precis blivit nollställd så hela innehållet är nu:

 

[Tue Feb 13 19:13:38 2007] [notice] Apache/2.2.4 (Win32) PHP/5.2.0 configured -- resuming normal operations

[Tue Feb 13 19:13:38 2007] [notice] Server built: Jan 9 2007 23:17:20

[Tue Feb 13 19:13:38 2007] [notice] Parent: Created child process 3420

[Tue Feb 13 19:13:38 2007] [notice] Child 3420: Child process is running

[Tue Feb 13 19:13:38 2007] [notice] Child 3420: Acquired the start mutex.

[Tue Feb 13 19:13:38 2007] [notice] Child 3420: Starting 250 worker threads.

[Tue Feb 13 19:13:38 2007] [notice] Child 3420: Starting thread to listen on port 80.

 

När jag använder servern i webbläsaren fylls filen på. Efter ett tag ser den ut så här:

 

[Tue Feb 13 19:13:38 2007] [notice] Apache/2.2.4 (Win32) PHP/5.2.0 configured -- resuming normal operations

[Tue Feb 13 19:13:38 2007] [notice] Server built: Jan 9 2007 23:17:20

[Tue Feb 13 19:13:38 2007] [notice] Parent: Created child process 3420

[Tue Feb 13 19:13:38 2007] [notice] Child 3420: Child process is running

[Tue Feb 13 19:13:38 2007] [notice] Child 3420: Acquired the start mutex.

[Tue Feb 13 19:13:38 2007] [notice] Child 3420: Starting 250 worker threads.

[Tue Feb 13 19:13:38 2007] [notice] Child 3420: Starting thread to listen on port 80.

[Tue Feb 13 20:22:48 2007] [error] [client 213.64.89.115] PHP Notice: Undefined index: text in D:\\htdocs\\index.php on line 21

 

 

men jag hittar inget fel på rad 21.

 

Länk till kommentar
Dela på andra webbplatser

1. Öppna filen httpd.conf (ska finnas i mappen conf).

 

2 Leta efter följande:

ErrorLog logs/error.log

 

#

# LogLevel: Control the number of messages logged to the error.log.

# Possible values include: debug, info, notice, warn, error, crit,

# alert, emerg.

#

LogLevel warn

 

Där ligger problemet, men även lösningen. Beroende på hur LogLevel är inställt så kan Apache logga allt möjligt som den och dess moduler gör. I 99,9 % av fallen totalt ointressant, om du inte ska felsöka något och liknande.

 

Antingen kan du ändra LogLevel enligt http://www.devshed.com/c/a/Apache/Logging-in-Apache/ , eller helt enkelt stänga av error-logen genom att kommentera bort ErrorLog:

 

# ErrorLog logs/error.log

 

_________

TicoRoman - Anfall är bästa försvar

 

 

[inlägget ändrat 2007-02-15 12:26:54 av Ticoroman]

Länk till kommentar
Dela på andra webbplatser

Jag har den inställd på "warn" och får ändå en massa "notice" i errorloggen. Dock är det inga problem med storleken, utskrifterna i loggen ovan kommer väl bara ut när Apache startas/stoppas?

 

Länk till kommentar
Dela på andra webbplatser

Jag har den inställd på "warn" och får ändå en massa "notice" i errorloggen.
Har man tillräckligt många "notices" och sidvisningar så går det snabbt att fylla en hårddisk. Min logg var 15+ GB efter någon vecka. Jag missade att åtgärda detta vid installation, och märkte det först när hårddisken var full.

 

Det är nackdelen med warn. Dock kan man testa en nivå högre...

 

_________

TicoRoman - Anfall är bästa försvar

 

 

[inlägget ändrat 2007-02-15 12:26:32 av Ticoroman]

Länk till kommentar
Dela på andra webbplatser

M a k a r o n

Jag provade att kommentera bort det men den fortsätter ändå att logga allt möjligt.

[inlägget ändrat 2007-02-15 19:27:16 av MAKARON]

Länk till kommentar
Dela på andra webbplatser

Har du stängt av, och sedan startat om Apache?

 

Annars se till att du ändrar i rätt httpd.conf. Brukar ligga i Apache/conf/ (om du inte själv kompilerat Apache och ändrat detta).

 

_________

TicoRoman - Anfall är bästa försvar

 

Länk till kommentar
Dela på andra webbplatser

M a k a r o n

Ja, jag har stängt av och startat om flera gånger och jag är ganska säker på att jag ändrar rätt.

 

Jag märkte en sak idag när jag redigerade en bild i Photoshop. Helt plötsligt började allt gå jättelångsamt. Så jag öppnade aktivitetshanteraren och såg att CPU-användning var mellan 80-100% och växlingsfil var över 1 GB. Jag tittade och såg att processen httpd.exe tog mest CPU och minnesanvändning. När jag stängde Apache såg jag tydlig skillnad.

 

Sen tittade jag i mappen logs och såg att log-filen hade blivit stor igen. Så det måste vara så att eftersom ingen var inne på min server så fylls filen på av sig själv utan att det händer något. Vad är det då som gör att den fylls på?

 

[inlägget ändrat 2007-02-16 20:09:24 av MAKARON]

Länk till kommentar
Dela på andra webbplatser

M a k a r o n

Nu har jag lyckats öppna filen innan den blev för stor. Då märkte jag vad det är som Apache fyller på med:

 

[Mon Feb 19 18:40:43 2007] [warn] (OS 996)Överlappad I/O-händelse är inte i ett signalerat tillstånd. : winnt_accept: Asynchronous AcceptEx failed.

 

så stod det flera tusen gånger ungefär i filen.

 

 

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...