mirror of
https://github.com/fosrl/olm.git
synced 2026-02-08 05:56:41 +00:00
feat(logger): configure log file path thorugh global options
Former-commit-id: 577d89f4fb
This commit is contained in:
committed by
Owen Schwartz
parent
7b7eae617a
commit
c565a46a6f
15
olm/olm.go
15
olm/olm.go
@@ -100,6 +100,17 @@ func Init(ctx context.Context, config GlobalConfig) {
|
|||||||
|
|
||||||
logger.GetLogger().SetLevel(util.ParseLogLevel(config.LogLevel))
|
logger.GetLogger().SetLevel(util.ParseLogLevel(config.LogLevel))
|
||||||
|
|
||||||
|
if config.LogFilePath != "" {
|
||||||
|
logFile, err := os.OpenFile(config.LogFilePath, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0o644)
|
||||||
|
if err != nil {
|
||||||
|
logger.Fatal("Failed to open log file: %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: figure out how to close file, if set
|
||||||
|
logger.SetOutput(logFile)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
logger.Debug("Checking permissions for native interface")
|
logger.Debug("Checking permissions for native interface")
|
||||||
err := permissions.CheckNativeInterfacePermissions()
|
err := permissions.CheckNativeInterfacePermissions()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -306,7 +317,7 @@ func StartTunnel(config TunnelConfig) {
|
|||||||
if config.FileDescriptorTun != 0 {
|
if config.FileDescriptorTun != 0 {
|
||||||
return olmDevice.CreateTUNFromFD(config.FileDescriptorTun, config.MTU)
|
return olmDevice.CreateTUNFromFD(config.FileDescriptorTun, config.MTU)
|
||||||
}
|
}
|
||||||
var ifName = interfaceName
|
ifName := interfaceName
|
||||||
if runtime.GOOS == "darwin" { // this is if we dont pass a fd
|
if runtime.GOOS == "darwin" { // this is if we dont pass a fd
|
||||||
ifName, err = network.FindUnusedUTUN()
|
ifName, err = network.FindUnusedUTUN()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -315,7 +326,6 @@ func StartTunnel(config TunnelConfig) {
|
|||||||
}
|
}
|
||||||
return tun.CreateTUN(ifName, config.MTU)
|
return tun.CreateTUN(ifName, config.MTU)
|
||||||
}()
|
}()
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("Failed to create TUN device: %v", err)
|
logger.Error("Failed to create TUN device: %v", err)
|
||||||
return
|
return
|
||||||
@@ -361,7 +371,6 @@ func StartTunnel(config TunnelConfig) {
|
|||||||
for {
|
for {
|
||||||
conn, err := uapiListener.Accept()
|
conn, err := uapiListener.Accept()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
go dev.IpcHandle(conn)
|
go dev.IpcHandle(conn)
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ type WgData struct {
|
|||||||
type GlobalConfig struct {
|
type GlobalConfig struct {
|
||||||
// Logging
|
// Logging
|
||||||
LogLevel string
|
LogLevel string
|
||||||
|
LogFilePath string
|
||||||
|
|
||||||
// HTTP server
|
// HTTP server
|
||||||
EnableAPI bool
|
EnableAPI bool
|
||||||
|
|||||||
Reference in New Issue
Block a user