cloudflare/cloudflared · error
unable to create directories for new logfile: %s
Error message
unable to create directories for new logfile: %s
What it means
Logger setup failure in createDirFile: os.MkdirAll could not create the configured FileConfig.Dirname directory for a new logfile (bad path component, permission denied, or path exists as a file). File logging cannot start, so the error is stored and surfaced to the caller configuring the logger.
Source
Thrown at logger/create.go:242
// If creating a new logfile fails, then we have no choice but to error out.
if err != nil {
singleFileInit.creationError = err
return
}
}
singleFileInit.writer = logFile
})
return singleFileInit.writer, singleFileInit.creationError
}
func createDirFile(config FileConfig) (io.Writer, error) {
if config.Dirname != "" {
err := os.MkdirAll(config.Dirname, dirPermMode)
if err != nil {
return nil, fmt.Errorf("unable to create directories for new logfile: %s", err)
}
}
mode := os.FileMode(filePermMode)
fullPath := filepath.Join(config.Dirname, config.Filename)
logFile, err := os.OpenFile(fullPath, os.O_CREATE|os.O_WRONLY|os.O_APPEND, mode)
if err != nil {
return nil, fmt.Errorf("unable to create a new logfile: %s", err)
}
return logFile, nil
}
func createRollingLogger(config RollingConfig) (io.Writer, error) {
rotatingFileInit.once.Do(func() {
if err := os.MkdirAll(config.Dirname, dirPermMode); err != nil {
rotatingFileInit.creationError = errView on GitHub (pinned to 2253eeeb25)
Solutions
- Verify the configured directory path is valid and its parents are writable by the cloudflared process.
- Check filesystem permissions or run with appropriate privileges/uid.
- Correct the log directory in configuration (e.g. --logfile or LogDirectory settings).
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at logger/create.go:242 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of cloudflare/cloudflared@2253eeeb25 (2026-09-06).
Data as JSON: /api/errors/33968af2eee2a8a5.
Report an issue: GitHub.