在甲骨文Linux系统上使用分布式哈希表


您是否曾想了解生产系统的以下应用信息?

  • 调用函数时调用堆栈
  • 函数使用的运行时间
  • 传递给函数的参数值
  • 函数的返回值
  • 函数的调用跟踪
  • 操作系统行为

通常,可以通过启用调试日志记录或将调试器附加到应用程序来检索此信息。然而,当应用程序在生产系统上运行时,这种方法是无法实现的。幸运的是,本文介绍了一个DTrace工具,可以用来在生产环境中收集这些信息。

概观

DTrace是一个详尽的动态跟踪工具包,于2005年1月在Sun Solaris 10中正式推出。它旨在动态安全地检查操作系统内核和应用程序在任何环境中的行为,包括开发、测试和生产。因此,它是调查操作系统和运行应用程序内部问题的非常有效的工具。在撰写本文时,DTrace已经被移植到许多操作系统,包括甲骨文Linux、苹果操作系统、免费软件和视窗10内部版本。

本文只关注在甲骨文Linux上使用DTrace。

甲骨文Linux上的数据竞赛

甲骨文在2010年收购了太阳微系统公司。2012年12月12日,甲骨文正式宣布面向甲骨文Linux的DTrace全面上市。目前,DTrace支持牢不可破的企业内核(UEK)第4版或第5版。UEK3上对DTrace的支持已经停止。下表来自Oracle Linux and Unbreakable Enterprise Kernel (UEK) Releases代表支持用户界面和甲骨文Linux版本之间的关联。

在本文中,Oracle Linux 7 Update 7 (UEK5)用于演示。

以下命令可用于在Oracle Linux 7上安装DTrace。