Skip to content

Instantly share code, notes, and snippets.

View andreasgerstmayr's full-sized avatar

Andreas Gerstmayr andreasgerstmayr

View GitHub Profile
@andreasgerstmayr
andreasgerstmayr / d3-flamegraph-base.html
Created August 30, 2021 16:23
updated flamegraph template (precompiled)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Flame Graph</title>
<meta name="template_version" content="4.0.6"><script>!function(t){var n={};function e(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,e),i.l=!0,i.exports}e.m=t,e.c=n,e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:r})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,n){if(1&n&&(t=e(t)),8&n)return t;if(4&n&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(e.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&n&&"string"!=typeof t)for(var i in t)e.d(r,i,function(n){return t[n]}.bind(null,i));return r},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,n){return Object.prototype.hasOwnProp

Extending BCC support for Performance Co-Pilot and Vector

The goal of this project was to integrate several BCC tools into Performance Co-Pilot (PCP) and Vector. The integration of the BCC tools into the PCP framework provides a number of benefits: 24/7 monitoring, archiving and exporting of the collected metrics to another system and much more. Furthermore, Vector can consume the metrics in near real-time and display them in the browser with meaningful visualizations, e.g. heat maps and flame graphs. Adequate visualization of collected performance metrics eases the identification and resolution of performance issues.

Integrated BCC Tools

The following BCC tools were integrated into PCP and Vector:

  • execsnoop: traces new processes
  • runqlat: records the scheduler run queue latency as histogram
  • profile: records stack traces at a specific interval