18

I want to get logs if something wrong happens to my electron app when in production mode i.e after giving .exe file to a user wrt windows platform.

How to go about it, how can i basically write my errors to a file which will be in cyclic in nature.

Anuj Nautiyal
  • 599
  • 1
  • 4
  • 11

3 Answers3

15

Take a look at electron log

// Setup file logging
const log = require('electron-log');
log.transports.file.level = 'info';
log.transports.file.file = __dirname + 'log.log';

// Log a message
log.info('log message');

EDIT:

As mentioned in the comments the "log.transports.file.file" is deprecated.

Instead I would suggest to use the following method.

log.transports.file.resolvePath = () => __dirname + "/log.log";
syonip
  • 2,762
  • 25
  • 27
0

Create a file next to you electron.js called logger.js

const path = require("path");
const log = require('electron-log');

log.transports.file.resolvePath = () => path.join(__dirname, '/logsmain.log');
log.transports.file.level = "info";

exports.log = (entry) => log.info(entry)

then on your app

const logger = require('electron').remote.require('./logger');
logger.log("some text")
Kuza Grave
  • 1,256
  • 14
  • 15
-1

Please have a look here: https://www.electronjs.org/docs/api/net-log

const { netLog } = require('electron')

app.whenReady().then(async () => {
  await netLog.startLogging('/path/to/net-log')
  // After some network events
  const path = await netLog.stopLogging()
  console.log('Net-logs written to', path)
})
Bitzu
  • 125
  • 2
  • 11
  • 1
    When reading the documentation located at https://www.electronjs.org/docs/api/net-log, it seems that this is meant to be used to log network calls? and not so much application logging. Can someone confirm? – sdec Jun 04 '20 at 14:09
  • @sdec yep, `netLog` is just for the network logging, e.g. see https://www.geeksforgeeks.org/network-logging-in-electronjs/ – xmedeko Apr 12 '21 at 07:48