Revision 34be621a src/Ganeti/Runtime.hs

b/src/Ganeti/Runtime.hs
32 32
  , daemonOnlyOnMaster
33 33
  , daemonUser
34 34
  , daemonGroup
35
  , ExtraLogReason(..)
35 36
  , daemonLogFile
37
  , daemonsExtraLogFile
36 38
  , daemonPidFile
37 39
  , getEnts
38 40
  , verifyDaemonUser
......
118 120
daemonGroup (ExtraGroup  DaemonsGroup)  = C.daemonsGroup
119 121
daemonGroup (ExtraGroup  AdminGroup)    = C.adminGroup
120 122

  
123
data ExtraLogReason = AccessLog | ErrorLog
124

  
125
daemonsExtraLogbase :: GanetiDaemon -> ExtraLogReason -> Maybe String
126
daemonsExtraLogbase GanetiMond AccessLog =
127
  Just C.daemonsExtraLogbaseGanetiMondAccess
128

  
129
daemonsExtraLogbase GanetiMond ErrorLog =
130
  Just C.daemonsExtraLogbaseGanetiMondError
131

  
132
daemonsExtraLogbase _ _ = Nothing
133

  
121 134
-- | Returns the log file for a daemon.
122 135
daemonLogFile :: GanetiDaemon -> IO FilePath
123 136
daemonLogFile daemon = do
124 137
  logDir <- Path.logDir
125 138
  return $ logDir </> daemonLogBase daemon <.> "log"
126 139

  
140
daemonsExtraLogFile :: GanetiDaemon -> ExtraLogReason -> IO (Maybe FilePath)
141
daemonsExtraLogFile daemon logreason = do
142
  logDir <- Path.logDir
143
  case daemonsExtraLogbase daemon logreason of
144
    Nothing -> return Nothing
145
    Just logbase -> return . Just $ logDir </> logbase <.> "log"
146

  
127 147
-- | Returns the pid file name for a daemon.
128 148
daemonPidFile :: GanetiDaemon -> IO FilePath
129 149
daemonPidFile daemon = do

Also available in: Unified diff