Skip to content

feat(file): add mode and dirMode options for file/directory permissions#2604

Open
mixelburg wants to merge 1 commit intowinstonjs:masterfrom
mixelburg:feat/file-transport-permissions
Open

feat(file): add mode and dirMode options for file/directory permissions#2604
mixelburg wants to merge 1 commit intowinstonjs:masterfrom
mixelburg:feat/file-transport-permissions

Conversation

@mixelburg
Copy link

Adds support for configurable file and directory permissions in the File transport.

Changes

  • mode option: Sets the file permission mode (e.g. 0o640) passed to fs.createWriteStream. Defaults to Node.js default (0o666) when not specified.
  • dirMode option: Sets the directory permission mode (e.g. 0o750) used when creating log directories with fs.mkdirSync. Defaults to Node.js default when not specified.
  • Updated TypeScript definitions for both options.
  • Added unit tests.

Usage

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({
      filename: 'app.log',
      dirname: '/var/log/myapp',
      mode: 0o640,
      dirMode: 0o750
    })
  ]
});

Fixes #2026

Allow configuring file permissions (mode) and directory permissions
(dirMode) when using the File transport. The mode option is passed
through to fs.createWriteStream, and dirMode is used when creating
log directories with fs.mkdirSync.

Closes winstonjs#2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request] Change default permissions for file transport

1 participant