mirror of
https://github.com/acedanger/shell.git
synced 2025-12-06 10:00:11 -08:00
- Created a new script `monitor-plex-backup.sh` for real-time status and health monitoring of the Plex backup system. - Implemented features to check system status, backup status, performance metrics, recent activity, scheduling status, and health recommendations. - Added command line options for watch mode and refresh interval. - Enhanced logging with color-coded output for better visibility. Update recent additions script to include more metadata - Modified `plex-recent-additions.sh` to retrieve additional metadata fields such as year and library section type from the Plex database. - Improved SQL query to join with library_sections for better context on added items. Introduce comprehensive test suite for Plex backup system - Added `test-plex-backup.sh` to provide automated testing for all backup-related functionality. - Implemented unit tests for JSON log initialization, performance tracking, notification system, checksum caching, backup verification, and more. - Included setup and cleanup functions for a mock test environment. - Added performance benchmarks for checksum calculation and compression. - Generated detailed test reports in JSON format for better tracking of test results.
30 lines
803 B
Bash
Executable File
30 lines
803 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Define the path to the Plex database
|
|
PLEX_DB="/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Plug-in Support/Databases/com.plexapp.plugins.library.db"
|
|
|
|
# Check if the database exists
|
|
if [ ! -f "$PLEX_DB" ]; then
|
|
echo "Plex database not found at $PLEX_DB"
|
|
exit 1
|
|
fi
|
|
|
|
# Query the database for items added in the last 7 days
|
|
sqlite3 "$PLEX_DB" <<EOF
|
|
.headers on
|
|
.mode column
|
|
SELECT
|
|
datetime(meta.added_at, 'unixepoch', 'localtime') AS "added_at"
|
|
, meta.title
|
|
, meta.year
|
|
, lib.section_type AS "library_section_type"
|
|
, lib.name as "library_name"
|
|
FROM
|
|
metadata_items meta
|
|
left join library_sections lib on meta.library_section_id = lib.id
|
|
WHERE
|
|
meta.added_at >= strftime('%s', 'now', '-7 days')
|
|
|
|
ORDER BY meta.added_at DESC;
|
|
EOF
|