Iva*_*gin 14 logging access-log node.js express
我在想,如果Node.js的(或快递框架)的任何类型的内置访问日志一样的Grails有例子吗?
我有grags应用程序在tomcat上运行,它会自动生成一个/apache-tomcat-7.0.42/logs/localhost_access_log.2013.10.30.txt文件,其中有关于请求响应的日志,如下所示:
[30/Oct/2013:00:00:01 +0000] [my-ip-address] [http-bio-8080-exec-18] "GET /my-service/check HTTP/1.0" [200] [took: 1 milis]
Run Code Online (Sandbox Code Playgroud)
这些日志由系统自动写入,我不必担心.
那么node.js怎么样?
谢谢你的帮助!
伊万
whi*_*win 26
在较新版本的Express(编写本文时为4.0.0)中,记录器不再是Express的一部分,因此您必须手动将其作为依赖项包含在内.它现在被称为摩根.
所以,在package.json,添加摩根作为依赖:
"dependencies": {
...
"morgan": "*"
...
}
Run Code Online (Sandbox Code Playgroud)
在Express配置中,添加:
app.use(require('morgan')('dev'));
Run Code Online (Sandbox Code Playgroud)
现在,日志记录应该像以前一样工作.:-)
小智 10
截至目前,大多数中间件(如记录器)不再与快递捆绑在一起,必须单独安装.
简答:首先,安装morgan:
npm install morgan
Run Code Online (Sandbox Code Playgroud)
然后用它来记录:
app = express();
var morgan = require('morgan')
...
app.use(morgan('combined'))
Run Code Online (Sandbox Code Playgroud)
文档在这里.
编辑截至发稿时,4.0.0这个解决方案显然已经不够了.查看whirlwin的答案,了解更新的解决方案.
您可以使用 app.use(express.logger());
记录在这里:http://www.senchalabs.org/connect/logger.html
| 归档时间: |
|
| 查看次数: |
28958 次 |
| 最近记录: |