Padel Tournament UI - Diagnostics

📋 View Server Logs →

=== Incoming Request Visualization ===
Request method: GET
Request URI: /v1/diagnostics.php
Query string: 
Host: api-staging.playpadel.be
User agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Request body length: 0
Request body preview: [empty]

Detected client IP: 216.73.216.47
Detected from: REMOTE_ADDR
IP candidates (resolution order):
  - REMOTE_ADDR | raw='216.73.216.47' | candidate='216.73.216.47' | valid=YES | loopback=NO | public=YES

Forwarded header values:
  HTTP_CF_CONNECTING_IP: [not set]
  HTTP_X_FORWARDED_FOR: [not set]
  HTTP_X_REAL_IP: [not set]
  HTTP_X_CLIENT_IP: [not set]
  HTTP_X_FORWARDED: [not set]
  HTTP_CLIENT_IP: [not set]
  REMOTE_ADDR: 216.73.216.47

Current working directory: /home/u565002880/domains/playpadel.be/public_html/api-staging/v1
__DIR__: /home/u565002880/domains/playpadel.be/public_html/api-staging/v1

Loading config.php...
DATA_BASE_DIR: /home/u565002880/domains/playpadel.be/public_html/api-staging/data_22032026
ADDRESS_LOCATIONS_CSV: /home/u565002880/domains/playpadel.be/public_html/api-staging/data_22032026/meta/clubs_padelstats_meta.csv
DATA_TOURNAMENTS_DIR: /home/u565002880/domains/playpadel.be/public_html/api-staging/data_22032026/tournaments

File existence checks:
Base data directory exists: YES
CSV file exists: YES
Tournaments directory exists: YES

Tournament files pattern: /home/u565002880/domains/playpadel.be/public_html/api-staging/data_22032026/tournaments/tournaments_all_*.json
Found 23 tournament files:
  - tournaments_all_2024-11.json
  - tournaments_all_2024-12.json
  - tournaments_all_2025-01.json
  - tournaments_all_2025-02.json
  - tournaments_all_2025-03.json
  - tournaments_all_2025-04.json
  - tournaments_all_2025-05.json
  - tournaments_all_2025-06.json
  - tournaments_all_2025-07.json
  - tournaments_all_2025-08.json
  - tournaments_all_2025-09.json
  - tournaments_all_2025-10.json
  - tournaments_all_2025-11.json
  - tournaments_all_2025-12.json
  - tournaments_all_2026-01.json
  - tournaments_all_2026-02.json
  - tournaments_all_2026-03.json
  - tournaments_all_2026-04.json
  - tournaments_all_2026-05.json
  - tournaments_all_2026-06.json
  - tournaments_all_2026-07.json
  - tournaments_all_2026-08.json
  - tournaments_all_2026-09.json

CSV file analysis:
CSV header: club_id, club_name, original_address, corrected_address, latitude, longitude
  Row 4: 'Hangar Padel Club' -> (51.2159361, 4.265172)
  Row 5: 'Mvp Padel' -> (51.123062, 3.730417)
  Row 6: 'Padel Club Melle' -> (50.9982883, 3.8046826)
  Row 7: 'Acasa Padel Laarne' -> (51.0299287, 3.8623323)
  Row 8: 'TC Eleven' -> (51.0741536, 3.568096)
  Row 9: 'TC Eeklo' -> (51.1841511, 3.5496259)
  Row 10: 'Dropshot Berlare' -> (51.0210189, 3.999136)
Total rows processed: 10, Valid location rows: 7

MySQL Database Diagnostics

MySQL extension available: YES
PDO extension available: YES

Loading database configuration...
Database connector loaded successfully
Database configuration:
DB_HOST: localhost
DB_NAME: u565002880_playpadel
DB_USER: u565002880_PlayPadelMySql
DB_PASS: SET (length: 19)

Testing database connection...
✓ Database connection successful!
MySQL Version: 11.8.6-MariaDB-log
Current Database: u565002880_playpadel

Checking required tables:
  ✓ schema_version
  ✓ users
  ✓ user_profiles
  ✓ notification_log
  ✓ user_confirmation_ips

Checking schema version:
  Schema Version: 1.3
  Description: Updated schema: added authentication_token column to users table
  Applied At: 2026-03-22 07:13:43

Table statistics:
  schema_version: 1 rows
  users: 2 rows
  user_profiles: 4 rows
  notification_log: 0 rows
  user_confirmation_ips: 7 rows

Testing basic query...
  Basic query result: SUCCESS

cURL Diagnostics

cURL extension available: YES
cURL version: 8.14.1

Testing connection to padelstats.be...
Test URL: https://padelstats.be/api/list_users?s=test
HTTP Code: 200
cURL Error: None
Response length: 2167 bytes
Response preview: [{"id":169391,"name":"Testelmans Dries","name_club":"TPC LAAKDAL VZW","padel":100,"category":"M"},{"id":364916,"name":"Testelmans Frank","name_club":"HEISTSE T.C.","padel":100,"category":"M"},{"id":60...

DNS Resolution test:
padelstats.be resolves to: 139.177.177.125

Testing outbound connectivity to httpbin.org...
HTTP Code: 200
cURL Error: None
Response received: YES

Mailing Service Diagnostics

PHP mail() function available: YES
fsockopen() function available: YES

Loading email configuration...
FEEDBACK_EMAIL_TO: SET
FEEDBACK_SMTP_HOST: SET
FEEDBACK_SMTP_PORT: SET
FEEDBACK_SMTP_USERNAME: SET
FEEDBACK_SMTP_PASSWORD: SET (length: 19)

Testing PHP mail() function...
mail() function call: SUCCESS

SMTP fallback test: SKIPPED (mail() succeeded or SMTP not configured)

Mailing Service Status:
✓ PRIMARY: PHP mail() function is working
✓ Overall status: GOOD

Recent Logs

Feedback Log Location: /home/u565002880/domains/playpadel.be/public_html/api-staging/data_22032026/feedback.log
Feedback log exists: YES
Recent feedback entries (last 20 lines):
----------------------------------------
[2026-03-30 11:28:40] IP:2a02:1812:171d:ff00:5969:aaa4:4af9:2c28 Fingerprint:unknown Feedback from jochen.gerardi@gmail.com: Test Backend - from api.plaupadel.be
Email test
[2026-04-05 09:28:18] IP:2a02:4780:3f:1234::b3 Fingerprint:unknown Feedback from diagnostic@playpadel.be: Diagnostic Test via endpoint feedback
This is a test message from diagnostics.php via the endpoint feedback at 2026-04-05 09:28:18
[2026-04-05 10:34:11] IP:2a02:4780:3f:1234::b3 Fingerprint:unknown Feedback from diagnostic@playpadel.be: Diagnostic Test via endpoint feedback
This is a test message from diagnostics.php via the endpoint feedback at 2026-04-05 10:34:11
[2026-04-07 09:41:45] IP:2a02:4780:3f:1234::b3 Fingerprint:unknown Feedback from diagnostic@playpadel.be: Diagnostic Test via endpoint feedback
This is a test message from diagnostics.php via the endpoint feedback at 2026-04-07 09:41:45
[2026-04-12 09:16:42] IP:2a02:4780:3f:1234::b3 Fingerprint:unknown Feedback from diagnostic@playpadel.be: Diagnostic Test via endpoint feedback
This is a test message from diagnostics.php via the endpoint feedback at 2026-04-12 09:16:42
[2026-04-12 09:17:43] IP:2a02:4780:3f:1234::b3 Fingerprint:unknown Feedback from diagnostic@playpadel.be: Diagnostic Test via endpoint feedback
This is a test message from diagnostics.php via the endpoint feedback at 2026-04-12 09:17:43
----------------------------------------

PHP Error Log Configuration:
error_log setting: /home/u565002880/.logs/error_log_api-staging_playpadel_be
log_errors: ON
display_errors: OFF

Checking for PHP error logs:

Found error log: /home/u565002880/domains/playpadel.be/public_html/api-staging/data_22032026/api_errors.log
Recent entries (last 30 lines):
----------------------------------------
[21-May-2026 18:54:02 UTC] API request received: /v1/feedback
[21-May-2026 18:54:02 UTC] Final path after stripping: /feedback
[21-May-2026 18:54:02 UTC] Path received: /feedback
[21-May-2026 18:54:02 UTC] Checking POST routes for path: /feedback
[21-May-2026 18:54:02 UTC] Handling feedback submission
[04-Jun-2026 08:38:36 UTC] API request received: /v1/feedback
[04-Jun-2026 08:38:36 UTC] Final path after stripping: /feedback
[04-Jun-2026 08:38:36 UTC] Path received: /feedback
[04-Jun-2026 08:38:36 UTC] Checking POST routes for path: /feedback
[04-Jun-2026 08:38:36 UTC] Handling feedback submission
[04-Jun-2026 09:06:23 UTC] API request received: /v1/feedback
[04-Jun-2026 09:06:23 UTC] Final path after stripping: /feedback
[04-Jun-2026 09:06:23 UTC] Path received: /feedback
[04-Jun-2026 09:06:23 UTC] Checking POST routes for path: /feedback
[04-Jun-2026 09:06:23 UTC] Handling feedback submission
[04-Jun-2026 10:25:12 UTC] API request received: /v1/feedback
[04-Jun-2026 10:25:12 UTC] Final path after stripping: /feedback
[04-Jun-2026 10:25:12 UTC] Path received: /feedback
[04-Jun-2026 10:25:12 UTC] Checking POST routes for path: /feedback
[04-Jun-2026 10:25:12 UTC] Handling feedback submission
[04-Jun-2026 10:44:22 UTC] API request received: /v1/feedback
[04-Jun-2026 10:44:22 UTC] Final path after stripping: /feedback
[04-Jun-2026 10:44:22 UTC] Path received: /feedback
[04-Jun-2026 10:44:22 UTC] Checking POST routes for path: /feedback
[04-Jun-2026 10:44:22 UTC] Handling feedback submission
[04-Jun-2026 10:58:00 UTC] API request received: /v1/feedback
[04-Jun-2026 10:58:00 UTC] Final path after stripping: /feedback
[04-Jun-2026 10:58:00 UTC] Path received: /feedback
[04-Jun-2026 10:58:00 UTC] Checking POST routes for path: /feedback
[04-Jun-2026 10:58:00 UTC] Handling feedback submission
----------------------------------------

API Endpoint Diagnostics

Testing /v1/feedback endpoint...
Feedback endpoint URL: https://api-staging.playpadel.be/v1/feedback
HTTP Method: POST
Request Data: {"email":"diagnostic@playpadel.be","title":"Diagnostic Test via endpoint feedback","message":"This i...
HTTP Code: 429
cURL Error: None
Response length: 54 bytes
Response preview: {"error":"Too many requests. Please try again later."}...