From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id CE528A0A05; Wed, 20 Jan 2021 12:54:16 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 85202140D01; Wed, 20 Jan 2021 12:54:16 +0100 (CET) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mails.dpdk.org (Postfix) with ESMTP id BF691140CFC for ; Wed, 20 Jan 2021 12:54:14 +0100 (CET) IronPort-SDR: 2YHpb9dj8Jt/OpCXErgHoWWBIQvlXqRSVvM6s21AOXVxe6glyASupRJLj/4OqcroOB2W4JeIZ5 WQD0nlJ155YA== X-IronPort-AV: E=McAfee;i="6000,8403,9869"; a="243161183" X-IronPort-AV: E=Sophos;i="5.79,361,1602572400"; d="scan'208";a="243161183" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Jan 2021 03:54:13 -0800 IronPort-SDR: dbkH4Lk4AzUaWxxwuYga2SX5PuI9iR2o5oTaowpPDspIe0aGDpjmIo862KQLTTYSXBDBO6//Y/ UGhox+92aHdw== X-IronPort-AV: E=Sophos;i="5.79,361,1602572400"; d="scan'208";a="426870377" Received: from bricha3-mobl.ger.corp.intel.com ([10.252.7.88]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 20 Jan 2021 03:54:11 -0800 Date: Wed, 20 Jan 2021 11:54:08 +0000 From: Bruce Richardson To: Thomas Monjalon Cc: Tyler Retzlaff , dev@dpdk.org, dmitry.kozliuk@gmail.com, navasile@linux.microsoft.com, ciara.power@intel.com Message-ID: <20210120115408.GC1406@bricha3-MOBL.ger.corp.intel.com> References: <1610408246-29482-1-git-send-email-roretzla@linux.microsoft.com> <5601419.A6MszWdEHB@thomas> <20210120103757.GB1406@bricha3-MOBL.ger.corp.intel.com> <3646223.fRS4d9ebDi@thomas> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3646223.fRS4d9ebDi@thomas> Subject: Re: [dpdk-dev] [PATCH v2] metrics/windows: build rte_metrics library X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Wed, Jan 20, 2021 at 12:09:19PM +0100, Thomas Monjalon wrote: > 20/01/2021 11:37, Bruce Richardson: > > On Tue, Jan 19, 2021 at 10:52:03PM +0100, Thomas Monjalon wrote: > > > 19/01/2021 22:31, Tyler Retzlaff: > > > > On Sun, Jan 17, 2021 at 11:19:55PM +0100, Thomas Monjalon wrote: > > > > > > > > > > Not sure it makes sense without the new telemetry feature. > > > > > Please focus on telemetry lib instead of half-enabling > > > > > the old metrics lib. > > > > > > > > > > > > > can you elaborate? (or reference a mailing list discussion) that gives some > > > > guidance? > > > > > > > > is the telemetry lib a replacement for metrics? the component we have now > > > > relies on the non-telemetry functions exported from metrics but does not > > > > use the telemetry functions. > > > > > > > > also, i notice that the meson.build for telemetry lib has an include path > > > > that references rte_metrics but does not appear to actually include any of > > > > the headers from rte_metrics (vestigial? missed in previous cleanup perhaps?) > > > > > > I think Bruce and Ciara will better explain than me > > > the intent of the telemetry lib and the compatibility path with the metrics lib. > > > > > > > The include path addition for metrics to the telemetry library does indeed > > look like it was just missed being removed, since I can compile things up > > successfully with it removed. > > > > With regards to interaction between telemetry library and metrics library, > > they are complementary but not replacements for each other. The metrics > > library provides support for tracking metrics, mostly on a per-port basis. > > The original telemetry library implementation was based on top of the > > metrics library and supported reporting out data from that library. More > > recent versions of the telemetry library have reworked that support to > > allow the reporting of arbitrary telemetry data, not just from the metrics > > library, but the old interface is still supported. > > The question is what is available in rte_metrics which is not already > available with rte_telemetry only? > I think rte_metrics is used only for rte_bitratestats and rte_latencystats. > Can we use rte_telemetry for this and forget rte_metrics? > No, we can't. In short, metrics is a data store. Telemetry is a data output mechanism. Telemetry cannot directly replace metrics because it does not store any data, it simply matches incoming requests against callbacks to retrieve and export data. The actual management of the underlying data sources is the responsibility of the library/app which has registered the callback. Metrics, on the other hand, is a data storage library, and allows the registration of groups of statictics which can be tracked and updated. It does also provide some callbacks to allow the data to be output by telemetry, but this functionality is not the primary goal of the lib. Both bitratestats and latencystats use metrics to manage their stats data - again any output provided is incidental to the primary purpose. Regards, /Bruce