Skip to content

Commit e33abde

Browse files
committed
Added script to auto-fetch new logs from the default org
1 parent f8311e4 commit e33abde

File tree

3 files changed

+34
-5
lines changed

3 files changed

+34
-5
lines changed

.devcontainer/devcontainer.json

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"features": {},
66
"remoteUser": "root",
77
"workspaceFolder": "/workspaces/NebulaLogger",
8-
"postCreateCommand": "chmod +x scripts/dev/devcontainer-post-start.sh",
8+
"postCreateCommand": "chmod +x scripts/dev/auto-log-fetcher.sh; chmod +x scripts/dev/devcontainer-post-start.sh",
99
"postStartCommand": "./scripts/dev/devcontainer-post-start.sh",
1010
"mounts": [
1111
"source=nebula-logger-dev-npm-cache,target=/root/.npm,type=volume",
@@ -15,9 +15,6 @@
1515
"customizations": {
1616
"vscode": {
1717
"settings": {
18-
"codeAnalyzer.analyzeOnOpen.enabled": false,
19-
"codeAnalyzer.normalizeSeverity.enabled": false,
20-
"codeAnalyzer.scanner.engines": "pmd,retire-js,eslint-lwc",
2118
"editor.defaultFormatter": "esbenp.prettier-vscode",
2219
"editor.formatOnSave": true,
2320
"explorer.copyRelativePathSeparator": "/",
@@ -28,7 +25,7 @@
2825
"*.page": "${capture}.page-meta.xml",
2926
"*.trigger": "${capture}.trigger-meta.xml",
3027
"*.view": "${capture}.view-meta.xml",
31-
"package.json": "package-lock.json, yarn.lock, pnpm-lock.yaml, bun.lockb, bun.lock"
28+
"package.json": "package-lock.json"
3229
},
3330
"files.autoSave": "onFocusChange",
3431
"files.trimTrailingWhitespace": true,

scripts/dev/auto-fetch-logs.sh

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#!/bin/bash
2+
3+
LOG_DIR=./logs
4+
POLL_INTERVAL=10 # seconds
5+
6+
mkdir -p "$LOG_DIR"
7+
8+
echo "Watching for new Apex logs from default org..."
9+
KNOWN_IDS=()
10+
11+
while true; do
12+
# Fetch log list in JSON
13+
LOGS_JSON=$(sf apex log list --json 2>/dev/null)
14+
15+
# Extract log IDs (most recent first)
16+
NEW_IDS=($(echo "$LOGS_JSON" | jq -r '.result[].id'))
17+
18+
for ID in "${NEW_IDS[@]}"; do
19+
if [[ ! " ${KNOWN_IDS[*]} " =~ " $ID " ]]; then
20+
echo "📥 Fetching new log: $ID"
21+
sf apex log get --log-id "$ID" --output-dir "$LOG_DIR"
22+
KNOWN_IDS+=("$ID")
23+
fi
24+
done
25+
26+
sleep "$POLL_INTERVAL"
27+
done

scripts/dev/devcontainer-post-start.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,16 @@ set -e
44

55
if sf org display --json > /dev/null 2>&1; then
66
echo "Default org found, running startup script..."
7+
78
sf apex trace
89
wait
10+
sf apex trace --is-autoproc-trace
11+
wait
912

1013
sf lightning debug
1114
wait
15+
16+
./auto-log-fetcher.sh
1217
else
1318
echo "No default org set — skipping script."
1419
fi

0 commit comments

Comments
 (0)