node.js - cPanel : Missing Passenger. 日志和 stderr.log 文件上的 NodeJs 部署

标签 node.js deployment cpanel web-deployment logfile

我已在两个不同的共享 Web 托管服务器上部署了 NodeJs 应用程序。第一个自动生成stderr.log 文件并有一个passenger 文件。但是,第二台服务器没有,因此我无法看到部署的错误。我在网上查看过,但找不到任何可以解决我的问题的内容。我也联系了服务器的客户服务,但他们的帮助不是很大。请让我知道如何创建stderr.log 或passenger.log 文件!非常感谢!

最佳答案

必须将以下内容添加到启动文件(例如 app.js)中才能生成错误日志。不需要在其他服务器提供商上执行此操作,因为这是他们系统中的默认设置。

var fs = require('fs');
var util = require('util');
var log_file = fs.createWriteStream(__dirname + '/debug.log', {flags : 'w'});
var log_stdout = process.stdout;
var log_stderr = process.stderr;

console.log = function(d) { //
  log_file.write(util.format(d) + '\n');
  log_stdout.write(util.format(d) + '\n');
  log_stderr.write(util.format(d) + '\n');
};

// var out = fs.openSync('./output.log', 'a')
//   , err = fs.openSync('./error.log', 'a');

// require('child_process').spawn('./server', [], {
//     detached    : true,
//     stdio       : ['ignore', out, err]
// });

var access = fs.createWriteStream(__dirname + '/stdout.log', {flags : 'w'});
process.stdout.write = process.stderr.write = access.write.bind(access);

process.on('uncaughtException', function(err) {
  console.error((err && err.stack) ? err.stack : err);
});

关于node.js - cPanel : Missing Passenger. 日志和 stderr.log 文件上的 NodeJs 部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70028117/

相关文章:

node.js - 如何从react native上传图片到nodejs?

javascript - Node : get child processes of a daemon and kill them

web-applications - 如何在 Jetty 中配置 webapps 部署目录

php - 设置 Cronjob 以在 cpanel 中调用 php 框架的方法

mysql - Cpanel MySQL 远程创建/删除数据库

mysql - 使用 phpmyadmin Cpanel 为 mysql 设置复制服务器

arrays - JSON数据/方括号剥离

javascript - 如何从 MongoDB 中提取项目并在输入新项目时更新它们?

java - 如何在 Tomcat 6 中部署 war

java - 如何配置禁止 EAR 文件内 WAR 文件的启动?