是否可以捕获当前进程/应用程序的性能计数器值?我正在尝试捕获有关正在运行的Web作业的指标,例如GC中的%TIme,Gen N堆大小,线程争用率/秒等。我看到Application Insights可以在我的网站中启用时捕获这些指标。 / p>
public class event extends Fragment {
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.event, container, false);
setHasOptionsMenu(true);
return view;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.notify:
Log.i("4", "Notify pressed");
return true;
case R.id.action_settings:
Log.i("4", "Settings pressed");
return true;
default:
// If we got here, the user's action was not recognized.
// Invoke the superclass to handle it.
return super.onOptionsItemSelected(item);
}
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.custom_menu, menu);
}
}
我理解为什么这会失败,因为Auzre / kudu运行时沙箱需要确保实例是我的进程而不是其他客户的进程。有没有办法访问我的进程'计数器,以便我可以报告/收集它们?我希望这个集合能够在这个过程中发生。
答案 0 :(得分:1)
目前,正如您所提到的,由于沙箱限制,无法收集性能计数器。我们正在研究如何以安全的方式实现这一目标,但没有时间表可以分享。
此时您最好的选择可能是使用应用程序洞察,这是目前为您的应用程序收集诊断的推荐方法(他们为几乎任何应用程序类型提供解决方案 - 而不仅仅是网络应用程序):https://azure.microsoft.com/en-us/documentation/services/application-insights/