Logbestanden Bekijken in ServBay: Gids voor Debuggen en Probleemoplossing
Tijdens webontwikkeling en serverbeheer zijn logbestanden essentieel voor het diagnosticeren van problemen, het monitoren van prestaties en het begrijpen van applicatiegedrag. ServBay is een krachtige lokale webontwikkelomgeving die verschillende pakketten (zoals webservers, databases en interpreters) integreert en biedt gecentraliseerd logbeheer voor al deze componenten.
In dit artikel worden twee hoofdmanieren uitgelegd om logbestanden in ServBay te bekijken: via de macOS terminal en via de grafische gebruikersinterface (GUI) van ServBay. Door deze methodes te beheersen, kun je veel efficiënter debuggen en problemen oplossen binnen de ServBay-omgeving.
Doelgroep: Webontwikkelaars die lokaal werken met ServBay en technologieën als PHP, Node.js, Python, Go, Java, Ruby, Rust, .NET, databases (MySQL, PostgreSQL, MongoDB, MariaDB), cachingdiensten (Redis, Memcached), en webservers (Caddy, Nginx, Apache).
Het Belang van Logbestanden
Waarom zijn logbestanden zo belangrijk?
- Foutdiagnose: Als applicaties of servers crashen, configuratieproblemen of permissiekwesties hebben, bevatten logbestanden vaak de gedetailleerde foutmeldingen.
- Gedragsanalyse: Door gebruikersverzoeken, serverreacties of databasequeries te monitoren kun je prestaties optimaliseren en abnormale patronen herkennen.
- Beveiligingsaudit: Logs kunnen pogingen tot ongeautoriseerde toegang of andere beveiligingsincidenten vastleggen.
- Prestatiemonitoring: Sommige logs leggen verwerkingstijden of resourcegebruik vast, wat cruciaal is voor het monitoren van prestaties.
ServBay centraliseert alle logbestanden, zodat je ze eenvoudig op één plek kunt inzien.
Locatie van ServBay Logbestanden
Alle logbestanden van ServBay worden standaard opgeslagen in de volgende map:
/Applications/ServBay/logs
1
In deze map vind je logs van ServBay zelf en van alle geïnstalleerde en draaiende pakketten (zoals PHP, Caddy, Nginx, MySQL, PostgreSQL, Redis, enz.), meestal georganiseerd per pakkettype of versie in submappen.
Methode 1: Logbestanden Bekijken via de macOS Terminal
Voor ontwikkelaars die veel werken met de commandoregel biedt de terminal maximale flexibiliteit en krachtige tekstverwerking (zoals filteren met grep
of realtime volgen met tail -f
).
1. Open de Terminal
Open de “Terminal” applicatie op je Mac.
2. Ga naar de ServBay Logs Map
Gebruik het cd
-commando om naar de logdirectory van ServBay te gaan:
bash
cd /Applications/ServBay/logs
1
3. Lijst van Logbestanden en Mappenstructuur Bekijken
Gebruik het ls
-commando om alle beschikbare logbestanden en submappen weer te geven:
bash
ls -l
1
Je ziet een lijst zoals hieronder (de exacte inhoud hangt af van welke pakketten je hebt geïnstalleerd en gestart):
caddy/
dnsmasq.log
mailpit.log
mariadb/
memcached.log
mongodb/
mysql/
nginx/
apache/
php/
|____5.6/
|____7.0/
|____7.1/
|____7.2/
|____7.3/
|____7.4/
|____8.0/
|____8.1/
|____8.2/
|____8.3/
|____8.4/
postgresql/
redis.log
xdebug/
|____5.6/
|____7.0/
|____7.1/
|____7.2/
|____7.3/
|____7.4/
|____8.0/
|____8.1/
|____8.2/
|____8.3/
|____8.4/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
4. De Inhoud van Specifieke Logbestanden Bekijken
Gebruik standaardcommando’s (cat
, less
, tail
) om logs te bekijken.
cat <bestandsnaam>
: toont het hele bestand ineens (geschikt voor kleine bestanden).less <bestandsnaam>
: laat de inhoud per pagina zien, ondersteunt zoeken en scrollen (voor grote bestanden).tail -f <bestandsnaam>
: toont realtime de nieuwste regels, ideaal voor het live volgen van fouten of events tijdens het debuggen.
Voorbeelden:
Bekijk de FPM-log van PHP 8.3:
bashcat php/8.3/php-fpm.log # Of per pagina bekijken less php/8.3/php-fpm.log # Of realtime volgen tail -f php/8.3/php-fpm.log
1
2
3
4
5Bekijk de Foutlog van de Caddy-webserver: De logs van Caddy staan meestal in de map
caddy
. Ga eerst naar de map, bekijk dan een specifiek bestand.bashcd caddy ls # Bekijk specifiek logbestand, bijvoorbeeld error.log tail -f error.log
1
2
3Bekijk de Foutlog van de Nginx-webserver: De logs van Nginx staan in de submap
nginx
.bashcd nginx ls # Bekijk o.a. error.log, access.log tail -f error.log
1
2
3Bekijk de log van MySQL 8: MySQL-logbestanden zijn in de map
mysql
te vinden.bashcd mysql ls # Zoek logbestanden zoals error.log, slow.log tail -f error.log
1
2
3Bekijk de logs van PostgreSQL: PostgreSQL-logbestanden vind je in de map
postgresql
.bashcd postgresql ls # Bekijk de logbestandsnaam tail -f postgresql.log
1
2
3Bekijk de Redis-log:
bashtail -f redis.log
1
5. Filteren in Logs met grep
Bij grote logbestanden is grep
onmisbaar om specifieke informatie te zoeken.
Voorbeelden:
Alle regels met “error” zoeken in de PHP 8.3-log:
bashgrep "error" php/8.3/php-fpm.log
1Zoek fouten van een specifieke request in de Caddy-log:
bashtail -f caddy/error.log | grep "servbay.demo"
1
Door tail -f
te combineren met grep
kun je efficiënt in realtime alleen relevante logregels zien.
Methode 2: Logbestanden Bekijken via de ServBay GUI
Voor wie liever niet met de commandoregel werkt, biedt de ServBay GUI een overzichtelijke en snelle manier om logs van een pakket of site te openen.
1. Start de ServBay-app
Open ServBay via de Programma’s
-map en dubbelklik op het pictogram.
2. Toegang tot Logs via de GUI
ServBay biedt op verschillende panelen snelle logtoegang:
Via het Overzichts- (Dashboard) Paneel
Na het openen van de ServBay-app kom je standaard in het Overzicht. In het “Snelle Servicebeheer”-deel staat rechts naast elk pakket dat draait een logpictogram (vaak een document of bestand). Klik hierop om het desbetreffende logbestand te openen.
Afbeelding: Logbestand snel bekijken via het overzichtspaneel
Via het “Pakketten” (Packages) Paneel
- Navigeer in het linkermenu van de ServBay-GUI naar het paneel ‘Pakketten’.
- In de lijst krijgt elk pakket rechts een logpictogram. Klik op dit pictogram om het logbestand van dat pakket te openen.
Afbeelding: Logbestand bekijken via het pakkettenpaneel
Via het “Sites” (Websites) Paneel
- Ga in de GUI naar het “Sites”-paneel via het menu links.
- In de lijst van websites zie je per site aan de rechterkant een logpictogram. Klik om het bijbehorende logbestand van de webserver te openen (zoals Caddy, Nginx of Apache), heel handig bij het troubleshooten van een specifieke site.
Afbeelding: Logbestanden van websites bekijken via het websitepaneel
Via het “Pakketconfiguraties” (Package Configs) Paneel
- Ga via het menu naar het “Pakketconfiguraties”-paneel.
- Selecteer het pakket (bijvoorbeeld PHP 8.3). Op de detailpagina rechtsboven zie je een logpictogram. Klik om de logs van deze specifieke versie in te zien.
Afbeelding: Logbestanden bekijken via het pakketconfiguratiepaneel
Het grote voordeel van logbestanden openen via de GUI is het gemak en het feit dat je geen padnamen of commando’s hoeft te onthouden. Binnen een paar klikken heb je direct inzicht in meldingen of fouten.
Veelvoorkomende ServBay Logbestanden en Hun Functies
Het kennen van de functies van de verschillende logbestanden helpt je sneller de juiste informatie te vinden:
/Applications/ServBay/logs/caddy/
: Bevat logs van de Caddy-webserver, doorgaansaccess.log
(alle inkomende verzoeken) enerror.log
(serverfouten)./Applications/ServBay/logs/nginx/
: Bevat Nginx-webserverlogs, meestalaccess.log
enerror.log
./Applications/ServBay/logs/apache/
: Apache-webserverlogs, doorgaansaccess.log
enerror.log
./Applications/ServBay/logs/php/<versienummer>/php-fpm.log
: Registreert de status van de PHP-FPM processmanager, opstartfouten en PHP-scriptfouten (als het PHP-errorlog hiernaar verwijst)./Applications/ServBay/logs/mysql/error.log
: Meldt het opstarten, afsluiten, runtime-fouten, waarschuwingen en crashes van de MySQL-database./Applications/ServBay/logs/mysql/slow.log
: Logt SQL-query’s die trager zijn dan een ingestelde drempel (optioneel)./Applications/ServBay/logs/mariadb/error.log
: Meldt MariaDB-databasefouten en statusinformatie, vergelijkbaar met MySQL./Applications/ServBay/logs/postgresql/postgresql.log
: Registreert alle events van de PostgreSQL-server, waaronder verbindingen, queryfouten en configuratieproblemen./Applications/ServBay/logs/mongodb/mongodb.log
: Meldt het opstarten, verbinden, replicatie, sharding en runtime-errors van MongoDB./Applications/ServBay/logs/redis.log
: Registreert het starten, laden van configuraties, persistency en fouten in de Redis key-value store./Applications/ServBay/logs/memcached.log
: Meldt het starten en runtime-informatie van de Memcached-cache./Applications/ServBay/logs/mailpit.log
: Meldt de status van de Mailpit-mailcatcher en ontvangen e-mails./Applications/ServBay/logs/xdebug/<versienummer>/
: Bevat logbestanden van de XDebug-debugger, inclusief eventueel ingeschakelde debugsessies./Applications/ServBay/logs/dnsmasq.log
: Logt domeinqueries en resoluties van de ingebouwde DNS-dienst (Dnsmasq), handig bij lokale domeinproblemen.
Logbeheer en Opschonen
Logbestanden kunnen na verloop van tijd veel schijfruimte gaan innemen. Controleer regelmatig de bestandsgrootte en archiveer of verwijder oude logs.
Verwijder oude logs eenvoudig via de terminal. Bijvoorbeeld, om een bepaalde PHP-foutlog te verwijderen:
bash
rm /Applications/ServBay/logs/php/7.4/php-fpm.log
1
Belangrijk:
- Zorg dat je de informatie niet meer nodig hebt — of maak eerst een back-up — voordat je een logbestand wist.
- Het verwijderen van een logbestand dat nog door een proces wordt beschreven, kan leiden tot loggingproblemen of zelfs storingen. Stop bij voorkeur eerst de bijbehorende service of gebruik logrotatiesoftware (veel ServBay-pakketten zijn hier al voor geconfigureerd).
Samenvatting
Het bekijken en analyseren van logbestanden is een essentiële vaardigheid voor elke lokale ontwikkelomgeving. Door de uniforme mappenstructuur en de GUI van ServBay wordt dit aanzienlijk eenvoudiger. Of je nu de kracht en flexibiliteit van de terminal of het gemak van de grafische interface prefereert, ServBay biedt robuuste manieren om je logs te beheren. Regelmatige controle van belangrijke logbestanden helpt je problemen snel te diagnosticeren en zorgt voor een stabiele en betrouwbare ontwikkelomgeving.