[RFE] Add pluggable metrics backend for Ironic and IPA

Bug #1526219 reported by Vladyslav Drok on 2015-12-15
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fix Released
Jay Faulkner

Bug Description

The addition of metric data reporting features is proposed to Ironic and Ironic Python Agent (IPA). Initially, this will include a statsd reference implementation, but will be sufficiently generic to permit the creation of alternative backends.

Vladyslav Drok (vdrok) wrote :

Spec is already merged, but implementation has not started yet:

https://review.openstack.org/137171, https://review.openstack.org/207966

Changed in ironic:
status: New → Confirmed
importance: Undecided → Wishlist
tags: added: rfe
Ruby Loo (rloo) on 2015-12-15
Changed in ironic:
assignee: nobody → Alex Weeks (alex-weeks)
tags: added: rfe-approved
removed: rfe

Fix proposed to branch: master
Review: https://review.openstack.org/301919

Changed in ironic:
assignee: Alex Weeks (alex-weeks) → Jay Faulkner (jason-oldos)
status: Confirmed → In Progress

Fix proposed to branch: master
Review: https://review.openstack.org/301923

Reviewed: https://review.openstack.org/321153
Committed: https://git.openstack.org/cgit/openstack/ironic-specs/commit/?id=a6d627c01d04720e17fdedf43a662b82145c835a
Submitter: Jenkins
Branch: master

commit a6d627c01d04720e17fdedf43a662b82145c835a
Author: Jay Faulkner <email address hidden>
Date: Wed May 25 11:00:26 2016 -0700

    Update metrics spec to reflect review comments

    This addresses a few small spec changes required for metrics as
    determined in code review.

      * Updating who is working on the spec
      * Changing names of decorators and context managers to be more sane
      * Reflect that we're no longer using an external library for metrics.

    Change-Id: I75cca69c97f10bafbdc8cf662836fb7502db6f39
    Partial-Bug: #1526219

Changed in ironic:
assignee: Jay Faulkner (jason-oldos) → Aline Bousquet (alineb)
Changed in ironic:
assignee: Aline Bousquet (alineb) → Jay Faulkner (jason-oldos)

Reviewed: https://review.openstack.org/301923
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=15c366580a18c77963d75cbc37e0805c96bc2a50
Submitter: Jenkins
Branch: master

commit 15c366580a18c77963d75cbc37e0805c96bc2a50
Author: Jay Faulkner <email address hidden>
Date: Tue Apr 5 21:10:49 2016 +0000

    Metric chassis, driver, node, and port API calls

    This change adds initial metrics for Ironic based on new support in
    ironic-lib. Emits timing metrics for basic Ironic API calls.

    Bumps ironic-lib to 2.0.0 in requirements to add metrics support, as
    well as adding ironic_lib.metrics and ironic_lib.metrics_statds to
    ironic-config-generator.conf to get them in the sample config, which
    is also regenerated.

    Change-Id: Ic35802e4cd11763ebbedb8ddc28f7e8dc535cc2f
    Partial-bug: #1526219

Related fix proposed to branch: master
Review: https://review.openstack.org/350317

Reviewed: https://review.openstack.org/350243
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=92edcabcf888feb61f5b0f0e6b69b3c88c9175f8
Submitter: Jenkins
Branch: master

commit 92edcabcf888feb61f5b0f0e6b69b3c88c9175f8
Author: Jay Faulkner <email address hidden>
Date: Tue Aug 2 12:30:46 2016 -0700

    Timing metrics for agent deploy classes

    This change adds timing metrics for all agent deploy classes. The only
    methods we are not emitting metrics for are those that return static

    Change-Id: I96290be44a60635f3bd68e7a43549e2f67a19f12
    Related-bug: #1526219

Reviewed: https://review.openstack.org/301919
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=84bf48431c2b3cdee47dbb6bb46cf808ac79cf99
Submitter: Jenkins
Branch: master

commit 84bf48431c2b3cdee47dbb6bb46cf808ac79cf99
Author: Jay Faulkner <email address hidden>
Date: Tue Apr 5 21:03:50 2016 +0000

    Pass agent metrics config via conductor

    This adds agent config options for metrics as described in the
    spec, and allows those config options to be sent to IPA on
    lookup. We're configuring heartbeat timeout this way, and this
    change matches nicely with that style.

    Additionally, this sets heartbeat_timeout under the new config
    namespace for consistency, however, we'll allow the old way to
    be deprecated when the vendor_passthru for agent lookups is

    Change-Id: I94d81b95feabe46999dbbc02522508cd542a89f8
    Co-Authored-By: Josh Gachnang <email address hidden>
    Partial-bug: #1526219

Reviewed: https://review.openstack.org/352149
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=93d2ba46ef6bd2d4e677bbd43c066aa5da880f5e
Submitter: Jenkins
Branch: master

commit 93d2ba46ef6bd2d4e677bbd43c066aa5da880f5e
Author: Jay Faulkner <email address hidden>
Date: Sun Aug 7 16:01:29 2016 -0700

    Metrics for agent client

    These are timing metrics for client calls to the agent.

    Change-Id: I397cb5902e5d8503d924fe6a6693d8a31dcd2dd6
    Related-bug: #1526219

Reviewed: https://review.openstack.org/350317
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=8af7429d6eec94ed4fedad0185a35b68e0b7dc87
Submitter: Jenkins
Branch: master

commit 8af7429d6eec94ed4fedad0185a35b68e0b7dc87
Author: Jay Faulkner <email address hidden>
Date: Tue Aug 2 16:57:05 2016 -0700

    Timing metrics: pxe boot and iscsi deploy driver

    Adds timing metrics for methods in the iscsi_deploy, pxe, and
    agent_base_vendor modules.

    Change-Id: Iae4a6652febcbf1ecbab948b2c4d9fa60af1e3a9
    Related-bug: #1526219

Changed in ironic:
status: In Progress → Fix Released
Ruby Loo (rloo) wrote :

Reviewed: https://review.openstack.org/352829
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=fc08c9a6f1aa70a34a61340d9543eb56eb72561c
Submitter: Jenkins
Branch: master

commit fc08c9a6f1aa70a34a61340d9543eb56eb72561c
Author: Aline Bousquet <email address hidden>
Date: Tue Aug 9 11:19:22 2016 +0100

    Add metrics for the ipminative driver

    Add timing metrics for the methods in the ipminative driver.

    Change-Id: Ia06a6f33dcd848b761d1465b12175d3ba9621e4a
    Related-Bug: #1526219

Reviewed: https://review.openstack.org/352648
Committed: https://git.openstack.org/cgit/openstack/ironic/commit/?id=c23cce33c08a5e89fba293f5430d20fef5702035
Submitter: Jenkins
Branch: master

commit c23cce33c08a5e89fba293f5430d20fef5702035
Author: Jay Faulkner <email address hidden>
Date: Mon Aug 8 16:55:18 2016 -0700

    Metrics for ConductorManager

    Metric methods in conductor/manager.py module.

    Change-Id: I1209eebfd01c73625741eb405b5bf57bc6ce4b6d
    Partial-bug: #1526219

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers