我是猫鼬的新手所以这可能是非常简单的事情.但是.
我有一个非常简单的架构,其中包含一个简单的数字数组:
userSchema = new mongoose.Schema({
name : String,
tag_id : String,
badges : [Number]
});
var user = mongoose.model( 'User', userSchema );
Run Code Online (Sandbox Code Playgroud)
后来我想为用户添加徽章.所以..
user.findOne({tag_id:tagid}, function(err,doc) {
if (!doc) callback(false, 'no doc');
// check to see if badge is in array, if not add it
if ( doc.badges.indexOf(badgeNum) == -1 ) {
doc.badges.push(badgeNum);
doc.save( function(err) {
if (err) callback( false, err );
else callback( true, '');
});
} else {
callback( false, 'user already had badge' )
} …Run Code Online (Sandbox Code Playgroud) 不幸的是,模型属性设置器和getter的文档有些不足,我无法让我的小二手工作.
var bcrypt = require('bcrypt');
module.exports = function( sequelize, DataTypes )
{
var User = sequelize.define('User', {
username: { type:DataTypes.STRING, unique: true, allowNull: false },
email: { type:DataTypes.STRING, allowNull: false, unique: true },
userlevel: { type:DataTypes.INTEGER, allowNull:false, defaultValue:0 },
password: { type:DataTypes.STRING,
set: function(v) {
var pw = this;
var r;
bcrypt.genSalt(10, function(err,salt) {
bcrypt.hash(v, salt, function(err,hash) {
pw.setDataValue('password', hash);
});
});
} }
});
return User;
}
Run Code Online (Sandbox Code Playgroud)
现在从基于github的问题可以看出,属性上的自定义setter不会在create()上调用,所以调用
db.User.create( { username:'guest', email:'guest@guest', userlevel:1, password:'guest' } ).success( function(record) { console.log(record) …Run Code Online (Sandbox Code Playgroud) 所有有关监控 kafka 的指南都指出日志刷新率是观察问题的关键指标。
我们有一个适度的三节点 kafka 集群 (0.9.x),我们开始认真对待它。我继续设置 prometheus 来抓取指标(使用他们提供的 jmx_exporter),但是我没有看到日志刷新率指标流入。对其中一个代理上的 jmx 端口的进一步检查表明它没有浮出水面。
具体来说,我正在寻找这个指标 kafka.log:type=LogFlushStats,name=LogFlushRateAndTimeMs
我不太懂java,所以我不确定这不仅仅是可以通过额外的标志或其他东西来纠正的问题。任何帮助,将不胜感激。