VirtualBox

Ignore:
Timestamp:
Aug 11, 2008 4:38:11 PM (16 years ago)
Author:
vboxsync
Message:

PerfAPI: Documentation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/idl/VirtualBox.xidl

    r11325 r11339  
    1038110381      stores performance metrics data.
    1038210382
    10383       Performance metrics are associated with objects like IHost and IMachine.
    10384       Each object has a distict set of performance metrics. It can be obtained
    10385       with <link to="IPerformanceCollector::getMetrics"/>.
     10383      Performance metrics are associated with objects like IHost and
     10384      ISessionMachine. Each object has a distinct set of performance metrics.
     10385      The set can be obtained with <link to="IPerformanceCollector::getMetrics"/>.
     10386
     10387      Metric data are collected at the specified intervals and are retained
     10388      internally. The interval and the number of samples retained can be set
     10389      with <link to="IPerformanceCollector::setMetrics" />.
     10390   
     10391      Metrics are organized hierarchically, each level separated by slash (/).
     10392      General scheme for metric name is
     10393      "Category/Metric[/SubMetric][:aggregation]". For example CPU/Load/User:avg
     10394      metric name stands for: CPU category, Load metric, User submetric, average
     10395      aggregate. An aggregate function is computed over all retained data. Valid
     10396      aggregate functions are:
     10397
     10398      <ul>
     10399      <li>avg -- average</li>
     10400      <li>min -- minimum</li>
     10401      <li>max -- maximum</li>
     10402      </ul>
     10403
     10404      "Category/Metric" together form base metric name. A base metric is the
     10405      smallest unit for which a sampling interval and the number of retained
     10406      samples can be set. Only base metrics can be enabled and disabled. All
     10407      sub-metrics are collected when their base metric is collected.
     10408      Collected values for any set of sub-metrics can be queried with
     10409      <link to="IPerformanceCollector::queryMetricsData" />.
     10410
     10411      The valid names for base metrics are:
     10412
     10413      <ul>
     10414      <li>CPU/Load</li>
     10415      <li>CPU/MHz</li>
     10416      <li>RAM/Usage</li>
     10417      </ul>
     10418   
     10419      The general sequence for collecting and retrieving the metrics is:
     10420      <ul>
     10421        <li>
     10422          Obtain an instance of IPerfromanceCollector with
     10423          <link to="IVirtualBox::performanceCollector" />
     10424        </li>
     10425        <li>
     10426          Allocate and populate an array with references to objects the metrics
     10427          will be collected for.
     10428        </li>
     10429        <li>
     10430          Allocate and populate an array with base metric names the data will be
     10431          collected for.
     10432        </li>
     10433        <li>
     10434          Call <link to="IPerformanceCollector::setupMetrics" />. From now on the
     10435          metric data will be collected and stored.
     10436        </li>
     10437        <li>
     10438          Wait for the data to get collected.
     10439        </li>
     10440        <li>
     10441          Allocate and populate an array with references to objects the metric
     10442          values will be queried for. You can re-use the object array used for
     10443          setting base metrics.
     10444        </li>
     10445        <li>
     10446          Allocate and populate an array with metric names the data will be
     10447          collected for. Note that metric names differ from base metric names.
     10448        </li>
     10449        <li>
     10450          Call <link to="IPerformanceCollector::queryMetricsData" />. The data that
     10451          have been collected so far are returned. Note that the values are still
     10452          retained internally and data collection continues.
     10453        </li>
     10454      </ul>
    1038610455    </desc>
    1038710456
     
    1042510494    <method name="setupMetrics">
    1042610495      <desc>
    10427         Sets parameters of specified metrics for a set of objects.
     10496        Sets parameters of specified base metrics for a set of objects.
    1042810497        <note>
    1042910498          @c Null metrics array means all metrics. @c Null object array means
     
    1045810527    <method name="enableMetrics">
    1045910528      <desc>
    10460         Turns on collecting specified metrics.
     10529        Turns on collecting specified base metrics.
    1046110530        <note>
    1046210531          @c Null metrics array means all metrics. @c Null object array means
     
    1047910548    <method name="disableMetrics">
    1048010549      <desc>
    10481         Turns off collecting specified metrics.
     10550        Turns off collecting specified base metrics.
    1048210551        <note>
    1048310552          @c Null metrics array means all metrics. @c Null object array means
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette