Just nu i M3-nätverket
Gå till innehåll
M a k a r o n

Apache fyller hårddisken!

Rekommendera Poster

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

Dela detta inlägg


Länk till inlägg
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).

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

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.

 

Dela detta inlägg


Länk till inlägg
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!

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

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.

 

Dela detta inlägg


Länk till inlägg
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]

Dela detta inlägg


Länk till inlägg
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?

 

Dela detta inlägg


Länk till inlägg
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]

Dela detta inlägg


Länk till inlägg
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

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

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]

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

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.

 

 

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Skapa ett nytt konto på vårt forum. Det är lätt!

Registrera ett nytt konto

Logga in

Redan medlem? Logga in här.

Logga in nu



×
×
  • Skapa nytt...