标签: monitoring

使用JVisualVM从Java中的远程应用程序获取堆转储

我运行JVisualVM(Windows XP,Sun Java 1.6.0.13,32位客户端VM)来监视远程应用程序(Linux,Sun Java 1.6.0.07,64位服务器VM).在启动实际的远程应用程序之前,我jstatd使用all访问策略在远程计算机上启动:

grant codebase "file:${java.home}/../lib/tools.jar" {
   permission java.security.AllPermission;
};
Run Code Online (Sandbox Code Playgroud)

然后我使用命令行启动实际的应用程序

 java -Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.port=3333 
compileTest.Main
Run Code Online (Sandbox Code Playgroud)

从客户端计算机,我可以看到远程应用程序并监视它.我也可以进行线程转储等.遗憾的是,堆转储按钮显示为灰色.

如何使用JVisualVM从远程监控的应用程序获取堆转储?

我尝试使用jConsole.使用jConsole,可以使用com.sun.management.HotSpotDiagnostic dumpHeap操作进行远程堆转储.我希望将转储转移到客户端,并使用JVisualVM提供的工具进行分析.我怎样才能做到这一点?

java heap monitoring jvisualvm

10
推荐指数
2
解决办法
3万
查看次数

如何在ASP.NET中跟踪已完成的文件下载

我有这个ASP.NET网站,允许用户下载程序安装包(只是普通文件).我希望能够跟踪下载完成的时间(即文件已完全下载到用户的计算机),然后调用Google Analytics脚本,将完整的下载报告为"目标"(显然,我的目标之一是增加文件下载量).

问题是我需要支持直接文件URL,而不是"重定向页面"解决方案.这是因为大量流量来自软件下载站点,这些站点在提交产品时明确要求直接文件URL.也许,他们会进行自己的文件分析(即病毒检查).但是有了这些限制,典型的情况是:

  1. 用户在软件下载站点上访问我的产品列表
  2. 用户单击此站点上的"下载"按钮
  3. "下载"页面通常是一个重定向,最终通过我最初提交的直接URL将用户带到我的文件中,即 http://www.ko-sw.com/somefile.exe

如果在这些条件下,无法提供精确的监控解决方案,可能存在解决方法吗?我想到的是暂时在服务器上存储已执行下载的次数,然后访问管理页面,该页面以某种方式将此数字报告给Google Analytics并最终将其设置为零.通过此解决方法,至少不需要尝试将javascript处理程序附加到非HTML资源.但即便如此,也存在一些问题:

  1. 如何跟踪下载是否已完成?
  2. 如何跟踪用户地理位置和浏览器功能,使其在报告中更加明显?

提前谢谢大家

asp.net monitoring google-analytics file download

10
推荐指数
1
解决办法
2427
查看次数

监控不包括本地流量的网络使

我正在开发一个监控网络使用情况的应用.但是我注意到许多方法都不允许排除本地流量(例如,Time Machine).

我正在寻找一种排除本地流量的方法,并且只监控直接进出互联网的使用情况.

更新:感谢您的回复,现在我知道如何查找流量是否为本地流量,但我仍然不知道如何计算总输入/输出字节(对不起,如果我之前没有详细说明).我无法知道在特定时间段内或自OS启动以来在本地(或互联网)发送/接收的字节数.当OS运行时启动或终止事实过程会使这个问题进一步复杂化.

如何在linux/Mac OSX中获取网络适配器统计信息的答案提供了一种总结总使用量的有趣方法,但它没有用,因为它总结的用法是接口统计.

更新2:我已经发布了我的最终解决方案.请向下滚动一下以查看.

networking cocoa monitoring objective-c sysctl

10
推荐指数
1
解决办法
4576
查看次数

如何监控进程内存使用情况 - ubuntu

我希望随着时间的推移在unix中观察一个给定的进程,看看内存增长的时间(它是一个长期运行的工作)

我想我能做到

ps -aux | grep PID
Run Code Online (Sandbox Code Playgroud)

并且每5分钟从cron运行一次,但似乎应该有更好的方法.

有没有办法可以用sar来做这件事?

linux memory ubuntu monitoring

10
推荐指数
1
解决办法
3万
查看次数

如何使用nagios监控elasticsearch

我想使用nagios来监控elasticsearch.基本上,我想知道弹性搜索是否已经完成.

我想我可以使用elasticsearch Cluster Health API(参见这里)

并使用我得到的"状态"(绿色,黄色或红色),但我仍然不知道如何使用nagios(nagios在一台服务器上,而elasticsearc在另一台服务器上).

还有另一种方法吗?

编辑: 我刚发现 - check_http_json.我想我会试一试.

monitoring nagios elasticsearch

10
推荐指数
2
解决办法
2万
查看次数

确定查询的进度(Oracle PL/SQL)

我是使用Oracle数据库的Web应用程序的开发人员.但是,UI通常会触发需要一段时间才能处理的数据库操作.因此,当这些情况发生时,客户端会想要一个进度条.

我最近发现我可以从第二个连接查询V $ SESSION_LONGOPS,这很棒,但它只适用于花费超过6秒的操作.这意味着我无法更新UI中的进度条,直到6秒过去.

我已经对V $ SESSION中的等待时间进行了研究,但就我所见,这还不包括等待查询.

有没有办法获得当前正在运行的会话查询的进度?或者我应该隐藏进度条直到6秒过去?

sql database oracle monitoring plsql

10
推荐指数
2
解决办法
8575
查看次数

NewRelic PHP代理添加了多少开销?

绝不是,NewRelic通过许多成功的部署来掀起风暴.但是在生产中使用它的缺点是什么?

PHP监视代理程序用作.so扩展名.如果我理解正确,它会连接到另一个系统聚合服务,该服务会过滤数据并将其推送到NewRelic云中.

这仅仅意味着它在引擎盖下透明地工作.但是,这是真的吗?任何监视,分析或api服务都会给整个堆栈增加一些开销.扩展本身是0.6 MB,这加起来每个PHP进程,这不是很多,所以我关心的是CPU和IO.

woodzu.vipserv.org/ec2-with-newrelic.png 该图显示了使用NewRelic代理(顶部蓝色)和没有代理(其他行)的生产EC2 t1.micro实例上的CPU利用率

  • NewRelic真正做了什么导致了额外的开销?
  • 使用它时还有哪些不利方面?

php performance monitoring profiling newrelic

10
推荐指数
1
解决办法
3476
查看次数

如何在iOS开发中以编程方式使用接近传感器?

经过一些谷歌搜索,我可以理解"接近传感器",当设备离开/靠近用户时,用于开/关屏幕.我观看了这段视频(从第30秒开始观看)并对这些很酷的东西感到惊讶.我想在我的应用程序中实现它.

然而,我想知道有没有公共API可用时,可以保护屏幕锁proximityMonitoringEnabledYES.然后上面的应用程序如何做到这一点?

为了清楚地理解,我正在复制一些代码.

启用接近传感器:

[[UIDevice currentDevice] setProximityMonitoringEnabled:YES];
Run Code Online (Sandbox Code Playgroud)

设置传感器更换的观察者:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(sensorStateMonitor:) name:@"UIDeviceProximityStateDidChangeNotification" object:nil];
Run Code Online (Sandbox Code Playgroud)

最后,您可以通过以下方法找到接近传感器的状态:

- (void)sensorStateMonitor:(NSNotificationCenter *)notification
{
    if ([[UIDevice currentDevice] proximityState] == YES)
    {
        NSLog(@"Device is close to user.");
    }

    else
    { 
        NSLog(@"Device is not closer to user.");
    }
}
Run Code Online (Sandbox Code Playgroud)

题:

我想在调用"设备接近用户"状态时显示一些视图.并且如果调用"设备不接近用户"状态,则要删除视图.

所以我在sensorStateMonitor:方法中添加了一个视图并删除了.但是视图只在几秒钟内可见,并且屏幕熄灭.

我可以阻止屏幕自动关闭吗?

只是困惑!!

monitoring screen ios proximitysensor

10
推荐指数
1
解决办法
6777
查看次数

使用prometheus和alertmanager在松弛状态下不显示警报消息

我试图通过使用alertmanager获得Prometheus发现的警报以获得松弛通知.

这是alert.rules文件,工作正常

groups:
- name: Instances
  rules:
  # Alert for any instance that is unreachable for >5 minutes.
  - alert: InstanceDown
    expr: up == 0
    for: 5m
    labels:
      severity: page
    # Prometheus templates apply here in the annotation and label fields of the alert.
    annotations:
      description: '{{ $labels.instance }} of job {{ $labels.job }} has been down for more than 5 minutes.'
      summary: 'Instance {{ $labels.instance }} down'
Run Code Online (Sandbox Code Playgroud)

它成功地显示了一个实例. 在此输入图像描述

但是我的alertmanager.yml中的问题是它没有向slack发送通知.我也成功设置了松弛的webhook,甚至测试了钩子是否正常工作,同时创建了一个钩子与松弛提供的服务

alertmanager.yml

groups: …
Run Code Online (Sandbox Code Playgroud)

alert monitoring docker-compose prometheus

10
推荐指数
1
解决办法
1704
查看次数

GCP“查询见解”“实用命令”成本

托管在 GCP 上的 Postgres 12.8 集群(1 个写入器,1 个读取器)。

每当我在“READER 实例上”出现 CPU 峰值并深入“查询见解”进行昂贵的查询时,每次最昂贵的操作都是“UTILITY COMMAND”。

我搜索“UTILITY COMMAND”并只得到这个

有人可以指导我如何深入“实用命令”以及如何降低 READER 实例的成本吗?

愿望

postgresql performance monitoring google-cloud-platform

10
推荐指数
1
解决办法
2888
查看次数