[#282] added the "real" user ip to the logs
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
package logs
|
||||
|
||||
import (
|
||||
"github.com/pocketbase/dbx"
|
||||
)
|
||||
|
||||
func init() {
|
||||
LogsMigrations.Register(func(db dbx.Builder) error {
|
||||
// delete old index (don't check for error because of backward compatability with old installations)
|
||||
db.DropIndex("_requests", "_request_ip_idx").Execute()
|
||||
|
||||
// rename ip -> remoteIp
|
||||
if _, err := db.RenameColumn("_requests", "ip", "remoteIp").Execute(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// add new userIp column
|
||||
if _, err := db.AddColumn("_requests", "userIp", `TEXT DEFAULT "127.0.0.1" NOT NULL`).Execute(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// add new indexes
|
||||
if _, err := db.CreateIndex("_requests", "_request_remote_ip_idx", "remoteIp").Execute(); err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err := db.CreateIndex("_requests", "_request_user_ip_idx", "userIp").Execute(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}, func(db dbx.Builder) error {
|
||||
// delete new indexes
|
||||
if _, err := db.DropIndex("_requests", "_request_remote_ip_idx").Execute(); err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err := db.DropIndex("_requests", "_request_user_ip_idx").Execute(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// drop userIp column
|
||||
if _, err := db.DropColumn("_requests", "userIp").Execute(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// restore original remoteIp column name
|
||||
if _, err := db.RenameColumn("_requests", "remoteIp", "ip").Execute(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// restore original index
|
||||
if _, err := db.CreateIndex("_requests", "_request_ip_idx", "ip").Execute(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user