mirror of
https://github.com/facebook/sapling.git
synced 2024-10-07 15:27:13 +03:00
44343769f8
Summary: We want to rename away from "mercurial". Rather than rename the "mercurial" Python package, we opted to just collapse it into the parent "edenscm" package. This is also a step towards further organizing we want to do around the new project name. To ease the transition wrt hotfixes, we now replace "edenscm.mercurial" with "mercurial" to fix imports within base64-python extensions. Reviewed By: sggutier Differential Revision: D38943169 fbshipit-source-id: 03fa18079c51e2f7fac05d65b127095da3ab7c99
31 lines
791 B
Python
31 lines
791 B
Python
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
#
|
|
# This software may be used and distributed according to the terms of the
|
|
# GNU General Public License version 2.
|
|
|
|
# metrics.py - generic metrics framework
|
|
|
|
from __future__ import absolute_import
|
|
|
|
from bindings import hgmetrics
|
|
|
|
|
|
class metrics(object):
|
|
"""Abstract base class for metrics"""
|
|
|
|
def __init__(self, ui):
|
|
self.ui = ui
|
|
|
|
def gauge(self, key, value=1, entity=None):
|
|
"""If entity is None, log locally. Otherwise, send it to a global counter."""
|
|
if entity is None:
|
|
hgmetrics.incrementcounter(key, value)
|
|
|
|
|
|
def client(ui):
|
|
"""Returns the appropriate metrics module"""
|
|
# @fb-only: from . import fb
|
|
|
|
# @fb-only: return fb.fbmetrics(ui)
|
|
return metrics(ui) # @oss-only
|