Merge branch 'collectd-5.4' into collectd-5.5
authorPierre-Yves Ritschard <pyr@spootnik.org>
Fri, 6 Nov 2015 09:32:55 +0000 (10:32 +0100)
committerPierre-Yves Ritschard <pyr@spootnik.org>
Fri, 6 Nov 2015 09:32:55 +0000 (10:32 +0100)
1  2 
src/statsd.c

diff --combined src/statsd.c
@@@ -1,24 -1,19 +1,24 @@@
  /**
   * collectd - src/statsd.c
 - *
   * Copyright (C) 2013       Florian octo Forster
   *
 - * Permission to use, copy, modify, and distribute this software for any
 - * purpose with or without fee is hereby granted, provided that the above
 - * copyright notice and this permission notice appear in all copies.
 + * Permission is hereby granted, free of charge, to any person obtaining a
 + * copy of this software and associated documentation files (the "Software"),
 + * to deal in the Software without restriction, including without limitation
 + * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 + * and/or sell copies of the Software, and to permit persons to whom the
 + * Software is furnished to do so, subject to the following conditions:
 + *
 + * The above copyright notice and this permission notice shall be included in
 + * all copies or substantial portions of the Software.
   *
 - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 - * WHATSOEVER RESULTING FROM LOSS OF MIND, USE, DATA OR PROFITS, WHETHER
 - * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
 - * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 + * DEALINGS IN THE SOFTWARE.
   *
   * Authors:
   *   Florian octo Forster <octo at collectd.org>
@@@ -851,8 -846,19 +851,19 @@@ static int statsd_metric_submit_unsafe 
      else
        values[0].gauge = (gauge_t) c_avl_size (metric->set);
    }
-   else
-     values[0].derive = (derive_t) metric->value;
+   else { /* STATSD_COUNTER */
+       /*
+        * Expand a single value to two metrics:
+        *
+        * - The absolute counter, as a gauge
+        * - A derived rate for this counter
+        */
+       values[0].derive = (derive_t) metric->value;
+       plugin_dispatch_values(&vl);
+       sstrncpy(vl.type, "gauge", sizeof (vl.type));
+       values[0].gauge = (gauge_t) metric->value;
+   }
  
    return (plugin_dispatch_values (&vl));
  } /* }}} int statsd_metric_submit_unsafe */