Node.js-winston loggly模块抛出;无法读取属性';长度';“未定义”的定义;错误
我正在尝试在我的Sails.js应用程序中设置Winston Loggly。我按照文档的要求,设置了我的Node.js-winston loggly模块抛出;无法读取属性';长度';“未定义”的定义;错误,node.js,logging,sails.js,Node.js,Logging,Sails.js,我正在尝试在我的Sails.js应用程序中设置Winston Loggly。我按照文档的要求,设置了我的/config/log.js文件,如下所示: // Send logs to Loggly using Winston var winston = require('winston'); require('winston-loggly'); var customLogger = new winston.Logger(); customLogger.add(winston.transports
/config/log.js
文件,如下所示:
// Send logs to Loggly using Winston
var winston = require('winston');
require('winston-loggly');
var customLogger = new winston.Logger();
customLogger.add(winston.transports.Loggly, {
inputToken: MY INPUT TOKEN,
auth: {
username: MY USERNAME,
password: MY PASSWORD
},
subdomain: MY SUBDOMAIN,
level: 'info',
tags: ['web-service', process.env.NODE_ENV],
json: true
});
module.exports.log = {
level: 'info',
custom: customLogger,
// Disable captain's log so it doesn't prefix or stringify our meta data.
inspect: false
};
无论我做什么,我的控制台都会出现以下错误:
/Users/Nag/Code/web-service/node_modules/winston-loggly/node_modules/loggly/lib/loggly/client.js:190
return isSolid.test(tag) && tag.length <= 64;
^
TypeError: Cannot read property 'length' of undefined
at /Users/Nag/Code/web-service/node_modules/winston-loggly/node_modules/loggly/lib/loggly/client.js:190:36
at Array.filter (native)
at Loggly.tagFilter (/Users/Nag/Code/web-service/node_modules/winston-loggly/node_modules/loggly/lib/loggly/client.js:186:15)
at new exports.Loggly (/Users/Nag/Code/web-service/node_modules/winston-loggly/node_modules/loggly/lib/loggly/client.js:62:12)
at Object.exports.createClient (/Users/Nag/Code/web-service/node_modules/winston-loggly/node_modules/loggly/lib/loggly/client.js:30:10)
at new exports.Loggly (/Users/Nag/Code/web-service/node_modules/winston-loggly/lib/winston-loggly.js:50:24)
at Logger.add (/Users/Nag/Code/web-service/node_modules/winston/lib/winston/logger.js:475:41)
at Object.<anonymous> (/Users/Nag/Code/web-service/config/log.js:18:14)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17)
at require (internal/module.js:20:19)
at /usr/local/lib/node_modules/sails/node_modules/include-all/index.js:129:29
at Array.forEach (native)
at requireAll (/usr/local/lib/node_modules/sails/node_modules/include-all/index.js:44:9)
at buildDictionary (/usr/local/lib/node_modules/sails/node_modules/sails-build-dictionary/index.js:68:14)
at Function.module.exports.aggregate (/usr/local/lib/node_modules/sails/node_modules/sails-build-dictionary/index.js:190:9)
at Array.loadOtherConfigFiles (/usr/local/lib/node_modules/sails/lib/hooks/moduleloader/index.js:239:27)
at /usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:591:38
at _arrayEach (/usr/local/lib/node_modules/sails/node_modules/async/lib/async.js:85:13)
/Users/Nag/code/web服务/node_modules/winston loggly/node_modules/loggly/lib/loggly/client.js:190
return isSolid.test(tag)和&tag.length由于某种原因,错误似乎指向process.env.NODE_env为null、空或未定义。
你能检查一下吗?就是这样!唷!我刚把它取下来,它就起作用了。奇怪的是,不知道为什么这里没有定义process.env.NODE\u env
。process.env.NODE\u env
将在那里是空的,除非您启动Sails w/(例如)NODE\u env=production Sails lift
,或者在您的环境中设置了NODE\u env(在Linux上通过导出NODE\u env=where
)。当前版本的Sails实际上将NODE_ENV
设置为当前的Sails环境,这可能会有点混乱,并将在Sails 1.0中消失。