3 votes

Le mode cluster de pm2 ne produit pas de logs

Nœud : 12.13.0

pm2 : 4.2.3

Le problème est où rien n'est imprimé dans les fichiers journaux pm2-out et pm2-err au lieu de quelques lignes que pm2 imprime le script qui s'exécute. J'ai essayé à la fois avec les loggers Winston et Debug. Lorsque je démarre en mode fork, tous les journaux sont imprimés. Aussi, pm2 logs montrent les journaux mais les fichiers sont vides.

Yo uso merge_logs pour éviter de diviser ou d'effacer les journaux dans plusieurs fichiers par processus.

J'ai également essayé de spécifier les noms des journaux, mais sans succès. Si quelqu'un peut m'aider, merci d'avance.

P.S. Je ne veux pas utiliser Winston output to file. De plus, avec pm2 monit Je ne vois rien.

ecosystem.config.js :

module.exports = {
 apps: [
    {
        name: 'client',
        script: 'npm',
        args: 'run start:client',
        cwd: '/mnt/data/app',
        watch: false,
        log_date_format: 'DD-MM-YYYY HH:mm',
        exec_mode: 'cluster',
        instances: '2',
        merge_logs: true,
        env: {
            PORT: 8080,
            NODE_ENV: 'production',
        },
    },
    {
        name: 'server',
        script: 'npm',
        args: 'run start:server',
        cwd: '/mnt/data/app',
        watch: false,
        log_date_format: 'DD-MM-YYYY HH:mm',
        exec_mode: 'cluster',
        instances: '2',
        merge_logs: true,
        env: {
            PORT: 3000,
            NODE_ENV: 'production',
           },
       },
    ],
};

0voto

shadman140 Points 1

Exécutez cette commande pm2 install pm2-intercom pourrait fonctionner sans cette &

puis ajoutez pm2: true sur log4js configuration comme la suivante :

log4js.configure({
    appenders: { 
        out: { 
            type: 'stdout'
        }
    },
    categories: { 
        default: { 
            appenders: ['out'], 
            level: 'info'
        }
    },
    pm2: true
});

pour plus de détails, voir https://github.com/log4js-node/log4js-node/blob/master/docs/clustering.md

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X