Skip to content

Latest commit

 

History

History
210 lines (142 loc) · 3.34 KB

File metadata and controls

210 lines (142 loc) · 3.34 KB

Monitoring & Log Management


Monitoring


Automated Health Checks

Both containers implement automated health monitoring:

  • Check Interval: Every 30 seconds
  • Timeout: 5 seconds
  • Start Period: 10 seconds
  • Retries: 3 attempts before marking unhealthy

Health Check Methods


Method 1: HTTP Endpoint

curl http://localhost:3000/health

Response (Healthy):

{
  "status": "healthy",
  "timestamp": "2025-11-25T12:00:00.000Z",
  "uptime": 3600,
  "database": "connected"
}

Method 2: Docker Inspect

docker inspect --format='{{.State.Health.Status}}' demasy-server
docker inspect --format='{{.State.Health.Status}}' oracle-al-database-26ai

Method 3: Built-in Command

docker exec demasy-server healthcheck

Expected output:

Server is healthy.

Log Management


Database Logs

Configuration:

  • Driver: JSON file
  • Max Size: 10MB per file
  • Max Files: 3 (rotation)
  • Total Size: ~30MB

Access database logs:

# View all logs
docker logs oracle-al-database-26ai

# Follow logs in real-time
docker logs -f oracle-al-database-26ai

# View last 100 lines
docker logs --tail 100 oracle-al-database-26ai

# View with timestamps
docker logs -t oracle-al-database-26ai

# Filter by time
docker logs --since 1h oracle-al-database-26ai
docker logs --since 2025-11-25T10:00:00 oracle-al-database-26ai

Management Server Logs

# View application logs
docker logs demasy-server

# Follow logs
docker logs -f demasy-server

# View with grep filter
docker logs demasy-server 2>&1 | grep ERROR

Application Logs Volume

Persistent logs are stored in the demasylabs_logs volume:

# Inspect volume
docker volume inspect demasylabs_logs

# Access logs from host
docker run --rm -v demasylabs_logs:/logs alpine ls -la /logs

APEX/ORDS Logs

# ORDS server logs
docker exec demasy-server tail -f /tmp/ords.log

# APEX installation logs
docker exec demasy-server tail -f /tmp/apex_install.log

# ORDS configuration logs
docker exec demasy-server cat /tmp/ords_install.log

Resource Monitoring


Real-time Resource Usage

# Monitor all containers
docker stats

# Monitor specific container
docker stats oracle-al-database-26ai

# One-time snapshot
docker stats --no-stream

Output includes:

  • CPU usage percentage
  • Memory usage and limit
  • Memory percentage
  • Network I/O
  • Block I/O
  • Process count

Container Details

# Full container inspection
docker inspect oracle-al-database-26ai

# Get specific information
docker inspect --format='{{.State.Status}}' oracle-al-database-26ai
docker inspect --format='{{.NetworkSettings.IPAddress}}' oracle-al-database-26ai

Performance Monitoring


Database Performance

# Connect to database
docker exec -it oracle-al-database-26ai sqlplus / as sysdba

# Run performance queries
SELECT * FROM V$SESSION WHERE USERNAME IS NOT NULL;
SELECT * FROM V$SQL WHERE ELAPSED_TIME > 1000000;
SELECT * FROM V$SYSTEM_EVENT;

Process Monitoring

# List running processes in container
docker exec demasy-server ps aux

# Check ORDS process
docker exec demasy-server netstat -tulnp | grep :8080

# Monitor Java processes
docker exec demasy-server jps -v