#!/bin/bash # EnConvo Settings Crash Debug Script # Run this script, then click Settings in EnConvo to capture the crash echo "=== EnConvo Settings Crash Debugger ===" echo "" echo "This script will:" echo "1. Monitor crash logs" echo "2. Capture Console output" echo "3. Show process info" echo "" echo "Press Ctrl+C to stop monitoring" echo "" echo "Starting monitoring... (Now click Settings in EnConvo)" echo "" # Get the current time for filtering logs START_TIME=$(date +"%Y-%m-%d %H:%M:%S") # Function to check for crash reports check_crashes() { echo "=== Checking for Crash Reports ===" CRASH_DIR="$HOME/Library/Logs/DiagnosticReports" if [ -d "$CRASH_DIR" ]; then echo "Recent EnConvo crash reports:" find "$CRASH_DIR" -name "*EnConvo*" -type f -mmin -5 2>/dev/null | head -5 echo "" fi } # Function to monitor Console logs monitor_console() { echo "=== Monitoring Console Logs (last 20 lines) ===" log show --predicate 'process == "EnConvo"' --last 1m --style compact 2>/dev/null | tail -20 echo "" } # Function to check running processes check_processes() { echo "=== EnConvo Processes ===" ps aux | grep -i enconvo | grep -v grep echo "" } # Run initial checks check_processes # Monitor in a loop while true; do sleep 2 check_crashes monitor_console check_processes echo "--- Waiting for crash (click Settings now if you haven't) ---" echo "" done