<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello OpenStack-Discuss,</p>
    <p>when setting up telemetry (ceilometer, gnocci, aodh) I followed
      the documentation at
<a class="moz-txt-link-freetext" href="https://docs.openstack.org/ceilometer/latest/install/cinder/install-cinder-ubuntu.html">https://docs.openstack.org/ceilometer/latest/install/cinder/install-cinder-ubuntu.html</a>
      to set up sending metrics for cinder to ceilomter.<br>
      <br>
    </p>
    <p>1) The instruction to run cinder-volume-usage-audit as a timer /
      cron every 5 minutes <br>
      <blockquote type="cite">*/5 * * * *
        /path/to/cinder-volume-usage-audit --send_actions</blockquote>
      <br>
      has me confused. This would cause the usage data for the last full
      month, to be sent to the notifications queue every 5 minutes.<br>
      There is no progress tracker or pointer limiting this to only sent
      data that has not yet been sent.</p>
    <p>Looking at how openstack-ansible configures this
(<a class="moz-txt-link-freetext" href="https://github.com/openstack/openstack-ansible-os_cinder/blob/1af3003e163e09f917dd124ae874f1bea6fe2c6b/tasks/main.yml#L147">https://github.com/openstack/openstack-ansible-os_cinder/blob/1af3003e163e09f917dd124ae874f1bea6fe2c6b/tasks/main.yml#L147</a>)
      it seems they were aware that running this without bounds and
      every 5 minutes is wrong.</p>
    <p>I also opened a bug
      (<a class="moz-txt-link-freetext" href="https://bugs.launchpad.net/ceilometer/+bug/2024475">https://bugs.launchpad.net/ceilometer/+bug/2024475</a>) about this.</p>
    <p><br>
    </p>
    <p>2) Extending on 1) I believe setting the <br>
    </p>
    <p>
      <blockquote type="cite">volume_usage_audit_period</blockquote>
    </p>
    <p>in the cinder configuration, to e.g. month or hour, will already
      set the interval for which the data is emitted. Then the important
      thing is to only <br>
      run cinder-volume-usage-audit in the same frequency.<br>
    </p>
    <p><br>
    </p>
    <p>3) Looking at the "<span class="o">--</span><span class="n">send_actions"
        options, I am wondering if the "create/delete" actions for
        volumes, snapshosts and backups are not sent by cinder anyways
        and why they would need to be sent again in batch and by
        cinder-volume-usage-audit? I am referring to <br>
      </span></p>
    <blockquote type="cite">
      <p><span class="n">[oslo_messaging_notifications]<br>
          driver = </span><span class="n">messagingv2</span><span
          class="n"></span></p>
    </blockquote>
    <p>being enabled. This might also be the reasoning behind this bug,
      <span class="n"><a class="moz-txt-link-freetext" href="https://bugs.launchpad.net/openstack-ansible/+bug/1968734">https://bugs.launchpad.net/openstack-ansible/+bug/1968734</a>,
        asking for this parameter to be behind a config switch to avoid
        duplicate actions to be sent.</span></p>
    <p><span class="n"><br>
      </span></p>
    <p><span class="n">4) Thinking about the whole setup more questions
        arise<br>
        <br>
        * What happens when I run this more than once in the same
        interval? What will ceilometer do with the (redundant) data?  <br>
      </span><span class="n"><span class="n">* I am also wondering how
          well this single piece of software scales and how this could
          be split up more?<br>
        </span>* Is there no way to implement a pointer to allow running
        this command more often and only send "new data"? Just like the
        timestamp up to which data was sent.<br>
        * What about any locking / coordination to enable multiple
        instances?<br>
      </span><span class="n"><br>
      </span></p>
    <p><span class="n"><br>
      </span></p>
    <p><span class="n">Regards</span></p>
    <p><span class="n"><br>
      </span></p>
    <p><span class="n">Christian<br>
      </span></p>
    <p><span class="n"><br>
      </span></p>
    <p><span class="n"><br>
      </span></p>
    <br>
    <p></p>
  </body>
</html>