- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
本文整理了Java中org.apache.helix.monitoring.mbeans.ZkClientMonitor
类的一些代码示例,展示了ZkClientMonitor
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZkClientMonitor
类的具体详情如下:
包路径:org.apache.helix.monitoring.mbeans.ZkClientMonitor
类名称:ZkClientMonitor
暂无
代码示例来源:origin: org.apache.helix/helix-core
private void recordStateChange(boolean stateChanged, boolean dataChanged) {
// update state change counter.
if (_monitor != null) {
if (stateChanged) {
_monitor.increaseStateChangeEventCounter();
}
if (dataChanged) {
_monitor.increaseDataChangeEventCounter();
}
}
}
}
代码示例来源:origin: apache/helix
private void record(String path, byte[] data, long startTimeMilliSec, ZkClientMonitor.AccessType accessType) {
if (_monitor != null) {
int dataSize = (data != null) ? data.length : 0;
_monitor.record(path, dataSize, startTimeMilliSec, accessType);
}
}
代码示例来源:origin: apache/helix
ZkClientMonitor monitor = new ZkClientMonitor(TEST_TAG, TEST_KEY, TEST_INSTANCE, false, null);
monitor.register();
monitor.increaseDataChangeEventCounter();
long eventCount = (long) _beanServer.getAttribute(name, "DataChangeEventCounter");
Assert.assertEquals(eventCount, 1);
monitor.increaseStateChangeEventCounter();
long stateChangeCount = (long) _beanServer.getAttribute(name, "StateChangeEventCounter");
Assert.assertEquals(stateChangeCount, 1);
monitor.increaseOutstandingRequestGauge();
long requestGauge = (long) _beanServer.getAttribute(name, "OutstandingRequestGauge");
Assert.assertEquals(requestGauge, 1);
monitor.decreaseOutstandingRequestGauge();
requestGauge = (long) _beanServer.getAttribute(name, "OutstandingRequestGauge");
Assert.assertEquals(requestGauge, 0);
monitor.record("TEST/IDEALSTATES/myResource", 0, System.currentTimeMillis() - 10,
ZkClientMonitor.AccessType.READ);
Assert.assertEquals((long) _beanServer.getAttribute(rootName, "ReadCounter"), 1);
Assert.assertEquals((long) _beanServer.getAttribute(idealStateName, "ReadCounter"), 1);
Assert.assertTrue((long) _beanServer.getAttribute(rootName, "ReadLatencyGauge.Max") >= 10);
monitor.record("TEST/INSTANCES/testDB0", 0, System.currentTimeMillis() - 15,
ZkClientMonitor.AccessType.READ);
Assert.assertEquals((long) _beanServer.getAttribute(rootName, "ReadCounter"), 2);
monitor.record("TEST/INSTANCES/node_1/CURRENTSTATES/session_1/Resource", 5,
代码示例来源:origin: apache/helix
@Test
public void testMBeanRegisteration() throws JMException {
final String TEST_TAG_1 = "test_tag_1";
final String TEST_KEY_1 = "test_key_1";
ZkClientMonitor monitor = new ZkClientMonitor(TEST_TAG_1, TEST_KEY_1, null, true, null);
Assert.assertFalse(_beanServer.isRegistered(buildObjectName(TEST_TAG_1, TEST_KEY_1, null)));
monitor.register();
Assert.assertTrue(_beanServer.isRegistered(buildObjectName(TEST_TAG_1, TEST_KEY_1, null)));
// no per-path monitor items created since "monitorRootPathOnly" = true
Assert.assertFalse(_beanServer.isRegistered(
buildPathMonitorObjectName(TEST_TAG_1, TEST_KEY_1, null,
ZkClientPathMonitor.PredefinedPath.IdealStates.name())));
ZkClientMonitor monitorDuplicate = new ZkClientMonitor(TEST_TAG_1, TEST_KEY_1, null, true, null);
monitorDuplicate.register();
Assert.assertTrue(_beanServer.isRegistered(buildObjectName(TEST_TAG_1, TEST_KEY_1, null, 1)));
monitor.unregister();
monitorDuplicate.unregister();
Assert.assertFalse(_beanServer.isRegistered(buildObjectName(TEST_TAG_1, TEST_KEY_1, null)));
Assert.assertFalse(_beanServer.isRegistered(buildObjectName(TEST_TAG_1, TEST_KEY_1, null, 1)));
}
代码示例来源:origin: apache/helix
protected ZkClient(IZkConnection zkConnection, int connectionTimeout, long operationRetryTimeout,
PathBasedZkSerializer zkSerializer, String monitorType, String monitorKey,
String monitorInstanceName, boolean monitorRootPathOnly) {
if (zkConnection == null) {
throw new NullPointerException("Zookeeper connection is null!");
}
_connection = zkConnection;
_pathBasedZkSerializer = zkSerializer;
_operationRetryTimeoutInMillis = operationRetryTimeout;
connect(connectionTimeout, this);
// initiate monitor
try {
if (monitorKey != null && !monitorKey.isEmpty() && monitorType != null && !monitorType
.isEmpty()) {
_monitor =
new ZkClientMonitor(monitorType, monitorKey, monitorInstanceName, monitorRootPathOnly,
_eventThread);
_monitor.register();
} else {
LOG.info("ZkClient monitor key or type is not provided. Skip monitoring.");
}
} catch (JMException e) {
LOG.error("Error in creating ZkClientMonitor", e);
}
}
代码示例来源:origin: apache/helix
_monitor.increaseOutstandingRequestGauge();
_monitor.decreaseOutstandingRequestGauge();
代码示例来源:origin: org.apache.helix/helix-core
protected ZkClient(IZkConnection zkConnection, int connectionTimeout, long operationRetryTimeout,
PathBasedZkSerializer zkSerializer, String monitorType, String monitorKey,
String monitorInstanceName, boolean monitorRootPathOnly) {
if (zkConnection == null) {
throw new NullPointerException("Zookeeper connection is null!");
}
_connection = zkConnection;
_pathBasedZkSerializer = zkSerializer;
_operationRetryTimeoutInMillis = operationRetryTimeout;
connect(connectionTimeout, this);
// initiate monitor
try {
if (monitorKey != null && !monitorKey.isEmpty() && monitorType != null && !monitorType
.isEmpty()) {
_monitor =
new ZkClientMonitor(monitorType, monitorKey, monitorInstanceName, monitorRootPathOnly);
_monitor.setZkEventThread(_eventThread);
} else {
LOG.info("ZkClient monitor key or type is not provided. Skip monitoring.");
}
} catch (JMException e) {
LOG.error("Error in creating ZkClientMonitor", e);
}
}
代码示例来源:origin: apache/helix
private ObjectName buildObjectName(String tag, String key, String instance) throws MalformedObjectNameException {
return ZkClientMonitor.getObjectName(tag, key, instance);
}
代码示例来源:origin: apache/helix
@Override
public DynamicMBeanProvider register() throws JMException {
List<DynamicMetric<?, ?>> attributeList = new ArrayList<>();
attributeList.add(_dataChangeEventCounter);
attributeList.add(_outstandingRequestGauge);
attributeList.add(_stateChangeEventCounter);
if (_zkEventThreadMetric != null) {
attributeList.add(_zkEventThreadMetric);
}
doRegister(attributeList, MBEAN_DESCRIPTION,
getObjectName(_monitorType, _monitorKey, _monitorInstanceName));
for (ZkClientPathMonitor.PredefinedPath path : ZkClientPathMonitor.PredefinedPath.values()) {
// If monitor root path only, check if the current path is Root.
// Otherwise, add monitors for every path.
if (!_monitorRootOnly || path.equals(ZkClientPathMonitor.PredefinedPath.Root)) {
_zkClientPathMonitorMap.put(path,
new ZkClientPathMonitor(path, _monitorType, _monitorKey, _monitorInstanceName)
.register());
}
}
return this;
}
代码示例来源:origin: org.apache.helix/helix-core
getEventLock().unlock();
if (_monitor != null) {
_monitor.unregister();
代码示例来源:origin: apache/helix
public ZkClientPathMonitor register() throws JMException {
List<DynamicMetric<?, ?>> attributeList = new ArrayList<>();
attributeList.add(_readCounter);
attributeList.add(_writeCounter);
attributeList.add(_readBytesCounter);
attributeList.add(_writeBytesCounter);
attributeList.add(_readFailureCounter);
attributeList.add(_writeFailureCounter);
attributeList.add(_readTotalLatencyCounter);
attributeList.add(_writeTotalLatencyCounter);
attributeList.add(_readLatencyGauge);
attributeList.add(_writeLatencyGauge);
attributeList.add(_readBytesGauge);
attributeList.add(_writeBytesGauge);
ObjectName objectName = new ObjectName(String
.format("%s,%s=%s", ZkClientMonitor.getObjectName(_type, _key, _instanceName).toString(),
MONITOR_PATH, _path.name()));
doRegister(attributeList, ZkClientMonitor.MBEAN_DESCRIPTION, objectName);
return this;
}
代码示例来源:origin: apache/helix
getEventLock().unlock();
if (_monitor != null) {
_monitor.unregister();
代码示例来源:origin: org.apache.helix/helix-core
private void record(String path, byte[] data, long startTimeMilliSec, ZkClientMonitor.AccessType accessType) {
if (_monitor != null) {
int dataSize = (data != null) ? data.length : 0;
_monitor.record(path, dataSize, startTimeMilliSec, accessType);
}
}
代码示例来源:origin: apache/helix
private void recordStateChange(boolean stateChanged, boolean dataChanged) {
// update state change counter.
if (_monitor != null) {
if (stateChanged) {
_monitor.increaseStateChangeEventCounter();
}
if (dataChanged) {
_monitor.increaseDataChangeEventCounter();
}
}
}
}
代码示例来源:origin: org.apache.helix/helix-core
public ZkClientPathMonitor register() throws JMException {
List<DynamicMetric<?, ?>> attributeList = new ArrayList<>();
attributeList.add(_readCounter);
attributeList.add(_writeCounter);
attributeList.add(_readBytesCounter);
attributeList.add(_writeBytesCounter);
attributeList.add(_readFailureCounter);
attributeList.add(_writeFailureCounter);
attributeList.add(_readTotalLatencyCounter);
attributeList.add(_writeTotalLatencyCounter);
attributeList.add(_readLatencyGauge);
attributeList.add(_writeLatencyGauge);
attributeList.add(_readBytesGauge);
attributeList.add(_writeBytesGauge);
ObjectName objectName = new ObjectName(String.format("%s,%s=%s",
ZkClientMonitor.getObjectName(_type, _key, _instanceName).toString(),
MONITOR_PATH, _path.name()));
doRegister(attributeList, MBEAN_DESCRIPTION, objectName);
return this;
}
代码示例来源:origin: apache/helix
public void recordFailure(String path, AccessType accessType) {
switch (accessType) {
case READ:
record(path, 0, 0, true, true);
return;
case WRITE:
record(path, 0, 0, true, false);
return;
default:
return;
}
}
代码示例来源:origin: org.apache.helix/helix-core
public ZkClientMonitor(String monitorType, String monitorKey, String monitorInstanceName,
boolean monitorRootPathOnly) throws JMException {
if (monitorKey == null || monitorKey.isEmpty() || monitorType == null || monitorType
.isEmpty()) {
throw new HelixException("Cannot create ZkClientMonitor without monitor key and type.");
}
_sensorName =
String.format("%s.%s.%s", MonitorDomainNames.HelixZkClient.name(), monitorType, monitorKey);
_objectName =
MBeanRegistrar.register(this, getObjectName(monitorType, monitorKey, monitorInstanceName));
for (ZkClientPathMonitor.PredefinedPath path : ZkClientPathMonitor.PredefinedPath.values()) {
// If monitor root path only, check if the current path is Root.
// Otherwise, add monitors for every path.
if (!monitorRootPathOnly || path.equals(ZkClientPathMonitor.PredefinedPath.Root)) {
_zkClientPathMonitorMap.put(path,
new ZkClientPathMonitor(path, monitorType, monitorKey, monitorInstanceName).register());
}
}
}
代码示例来源:origin: org.apache.helix/helix-core
public void recordFailure(String path, AccessType accessType) {
switch (accessType) {
case READ:
record(path, 0, 0, true, true);
return;
case WRITE:
record(path, 0, 0, true, false);
return;
default:
return;
}
}
}
代码示例来源:origin: org.apache.helix/helix-core
public void record(String path, int dataSize, long startTimeMilliSec, AccessType accessType) {
switch (accessType) {
case READ:
record(path, dataSize, System.currentTimeMillis() - startTimeMilliSec, false, true);
return;
case WRITE:
record(path, dataSize, System.currentTimeMillis() - startTimeMilliSec, false, false);
return;
default:
return;
}
}
代码示例来源:origin: apache/helix
public void record(String path, int dataSize, long startTimeMilliSec, AccessType accessType) {
switch (accessType) {
case READ:
record(path, dataSize, System.currentTimeMillis() - startTimeMilliSec, false, true);
return;
case WRITE:
record(path, dataSize, System.currentTimeMillis() - startTimeMilliSec, false, false);
return;
default:
return;
}
}
我尝试理解[c代码 -> 汇编]代码 void node::Check( data & _data1, vector& _data2) { -> push ebp -> mov ebp,esp ->
我需要在当前表单(代码)的上下文中运行文本文件中的代码。其中一项要求是让代码创建新控件并将其添加到当前窗体。 例如,在Form1.cs中: using System.Windows.Forms; ..
我有此 C++ 代码并将其转换为 C# (.net Framework 4) 代码。有没有人给我一些关于 malloc、free 和 sprintf 方法的提示? int monate = ee; d
我的网络服务器代码有问题 #include #include #include #include #include #include #include int
给定以下 html 代码,将列表中的第三个元素(即“美丽”一词)以斜体显示的 CSS 代码是什么?当然,我可以给这个元素一个 id 或一个 class,但 html 代码必须保持不变。谢谢
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 7 年前。
我试图制作一个宏来避免重复代码和注释。 我试过这个: #define GrowOnPage(any Page, any Component) Component.Width := Page.Surfa
我正在尝试将我的旧 C++ 代码“翻译”成头条新闻所暗示的 C# 代码。问题是我是 C# 中的新手,并不是所有的东西都像 C++ 中那样。在 C++ 中这些解决方案运行良好,但在 C# 中只是不能。我
在 Windows 10 上工作,R 语言的格式化程序似乎没有在 Visual Studio Code 中完成它的工作。我试过R support for Visual Studio Code和 R-T
我正在处理一些报告(计数),我必须获取不同参数的计数。非常简单但乏味。 一个参数的示例查询: qCountsEmployee = ( "select count(*) from %s wher
最近几天我尝试从 d00m 调试网络错误。我开始用尽想法/线索,我希望其他 SO 用户拥有可能有用的宝贵经验。我希望能够提供所有相关信息,但我个人无法控制服务器环境。 整个事情始于用户注意到我们应用程
我有一个 app.js 文件,其中包含如下 dojo amd 模式代码: require(["dojo/dom", ..], function(dom){ dom.byId('someId').i
我对“-gencode”语句中的“code=sm_X”选项有点困惑。 一个例子:NVCC 编译器选项有什么作用 -gencode arch=compute_13,code=sm_13 嵌入库中? 只有
我为我的表格使用 X-editable 框架。 但是我有一些问题。 $(document).ready(function() { $('.access').editable({
我一直在通过本教程学习 flask/python http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-wo
我想将 Vim 和 EMACS 用于 CNC、G 代码和 M 代码。 Vim 或 EMACS 是否有任何语法或模式来处理这种类型的代码? 最佳答案 一些快速搜索使我找到了 this vim 和 thi
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?更新问题,使其成为 on-topic对于堆栈溢出。 7年前关闭。 Improve this
这个问题在这里已经有了答案: Enabling markdown highlighting in Vim (5 个回答) 6年前关闭。 当我在 Vim 中编辑包含 Markdown 代码的 READM
我正在 Swift3 iOS 中开发视频应用程序。基本上我必须将视频 Assets 和音频与淡入淡出效果合并为一个并将其保存到 iPhone 画廊。为此,我使用以下方法: private func d
pipeline { agent any stages { stage('Build') { steps { e
我是一名优秀的程序员,十分优秀!