Hallucinate a better logging lol
This commit is contained in:
14
main.go
14
main.go
@@ -369,25 +369,31 @@ func main() {
|
|||||||
func HandleSpecialArgs(args []string, db utils.DB) (bool, error) {
|
func HandleSpecialArgs(args []string, db utils.DB) (bool, error) {
|
||||||
handleSpecialArgsLogger := logger.Default.WithPrefix("HandleSpecialArgs")
|
handleSpecialArgsLogger := logger.Default.WithPrefix("HandleSpecialArgs")
|
||||||
handleSpecialArgsLogger.Debug("Handling special arguments: %v", args)
|
handleSpecialArgsLogger.Debug("Handling special arguments: %v", args)
|
||||||
|
if len(args) == 0 {
|
||||||
|
handleSpecialArgsLogger.Warning("No arguments provided to HandleSpecialArgs")
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
switch args[0] {
|
switch args[0] {
|
||||||
case "reset":
|
case "reset":
|
||||||
handleSpecialArgsLogger.Info("Resetting all files")
|
handleSpecialArgsLogger.Info("Resetting all files to their original state from database")
|
||||||
err := utils.ResetAllFiles(db)
|
err := utils.ResetAllFiles(db)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
handleSpecialArgsLogger.Error("Failed to reset all files: %v", err)
|
handleSpecialArgsLogger.Error("Failed to reset all files: %v", err)
|
||||||
return true, err
|
return true, err
|
||||||
}
|
}
|
||||||
handleSpecialArgsLogger.Info("All files reset")
|
handleSpecialArgsLogger.Info("Successfully reset all files to original state")
|
||||||
return true, nil
|
return true, nil
|
||||||
case "dump":
|
case "dump":
|
||||||
handleSpecialArgsLogger.Info("Dumping all files from database")
|
handleSpecialArgsLogger.Info("Dumping all files from database (clearing snapshots)")
|
||||||
err := db.RemoveAllFiles()
|
err := db.RemoveAllFiles()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
handleSpecialArgsLogger.Error("Failed to remove all files from database: %v", err)
|
handleSpecialArgsLogger.Error("Failed to remove all files from database: %v", err)
|
||||||
return true, err
|
return true, err
|
||||||
}
|
}
|
||||||
handleSpecialArgsLogger.Info("All files removed from database")
|
handleSpecialArgsLogger.Info("Successfully cleared all file snapshots from database")
|
||||||
return true, nil
|
return true, nil
|
||||||
|
default:
|
||||||
|
handleSpecialArgsLogger.Debug("Unknown special argument: %q", args[0])
|
||||||
}
|
}
|
||||||
handleSpecialArgsLogger.Debug("No special arguments handled, returning false")
|
handleSpecialArgsLogger.Debug("No special arguments handled, returning false")
|
||||||
return false, nil
|
return false, nil
|
||||||
|
|||||||
17
utils/db.go
17
utils/db.go
@@ -42,24 +42,25 @@ func GetDB() (DB, error) {
|
|||||||
|
|
||||||
dbFile := filepath.Join("data.sqlite")
|
dbFile := filepath.Join("data.sqlite")
|
||||||
getDBLogger.Debug("Opening database file: %q", dbFile)
|
getDBLogger.Debug("Opening database file: %q", dbFile)
|
||||||
|
getDBLogger.Trace("Database configuration: PrepareStmt=true, GORM logger=Silent")
|
||||||
db, err := gorm.Open(sqlite.Open(dbFile), &gorm.Config{
|
db, err := gorm.Open(sqlite.Open(dbFile), &gorm.Config{
|
||||||
// SkipDefaultTransaction: true,
|
// SkipDefaultTransaction: true,
|
||||||
PrepareStmt: true,
|
PrepareStmt: true,
|
||||||
Logger: gormlogger.Default.LogMode(gormlogger.Silent),
|
Logger: gormlogger.Default.LogMode(gormlogger.Silent),
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
getDBLogger.Error("Failed to open database: %v", err)
|
getDBLogger.Error("Failed to open database file %q: %v", dbFile, err)
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
getDBLogger.Debug("Database opened successfully, running auto migration")
|
getDBLogger.Debug("Database opened successfully, running auto migration for FileSnapshot model")
|
||||||
if err := db.AutoMigrate(&FileSnapshot{}); err != nil {
|
if err := db.AutoMigrate(&FileSnapshot{}); err != nil {
|
||||||
getDBLogger.Error("Auto migration failed: %v", err)
|
getDBLogger.Error("Auto migration failed for FileSnapshot model: %v", err)
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
getDBLogger.Debug("Auto migration completed")
|
getDBLogger.Info("Database initialized and migrated successfully")
|
||||||
|
|
||||||
globalDB = &DBWrapper{db: db}
|
globalDB = &DBWrapper{db: db}
|
||||||
getDBLogger.Debug("Database wrapper initialized")
|
getDBLogger.Debug("Database wrapper initialized and cached globally")
|
||||||
return globalDB, nil
|
return globalDB, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -89,7 +90,7 @@ func (db *DBWrapper) FileExists(filePath string) (bool, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (db *DBWrapper) SaveFile(filePath string, fileData []byte) error {
|
func (db *DBWrapper) SaveFile(filePath string, fileData []byte) error {
|
||||||
saveFileLogger := dbLogger.WithPrefix("SaveFile").WithField("filePath", filePath)
|
saveFileLogger := dbLogger.WithPrefix("SaveFile").WithField("filePath", filePath).WithField("dataSize", len(fileData))
|
||||||
saveFileLogger.Debug("Attempting to save file to database")
|
saveFileLogger.Debug("Attempting to save file to database")
|
||||||
saveFileLogger.Trace("File data length: %d", len(fileData))
|
saveFileLogger.Trace("File data length: %d", len(fileData))
|
||||||
|
|
||||||
@@ -99,7 +100,7 @@ func (db *DBWrapper) SaveFile(filePath string, fileData []byte) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if exists {
|
if exists {
|
||||||
saveFileLogger.Debug("File already exists, skipping save")
|
saveFileLogger.Debug("File already exists in database, skipping save to avoid overwriting original snapshot")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
saveFileLogger.Debug("Creating new file snapshot in database")
|
saveFileLogger.Debug("Creating new file snapshot in database")
|
||||||
@@ -111,7 +112,7 @@ func (db *DBWrapper) SaveFile(filePath string, fileData []byte) error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
saveFileLogger.Error("Failed to create file snapshot: %v", err)
|
saveFileLogger.Error("Failed to create file snapshot: %v", err)
|
||||||
} else {
|
} else {
|
||||||
saveFileLogger.Debug("File saved successfully to database")
|
saveFileLogger.Info("File successfully saved to database")
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
flagsLogger.Debug("Initializing flags")
|
flagsLogger.Debug("Initializing command-line flags")
|
||||||
flagsLogger.Trace("ParallelFiles initial value: %d, Filter initial value: %q, JSON initial value: %t", *ParallelFiles, *Filter, *JSON)
|
flagsLogger.Trace("Initial flag values - ParallelFiles: %d, Filter: %q, JSON: %t", *ParallelFiles, *Filter, *JSON)
|
||||||
|
flagsLogger.Debug("Flag definitions: -P (parallel files), -f (filter), -json (JSON mode)")
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user