示例#1
0
def submit_errors_metric(lambda_context):
    """Increment aws.lambda.enhanced.errors by 1
    """
    if not are_enhanced_metrics_enabled():
        return

    lambda_metric(
        "{}.errors".format(ENHANCED_METRICS_NAMESPACE_PREFIX),
        1,
        tags=get_enhanced_metrics_tags(lambda_context),
    )
def submit_enhanced_metric(metric_name, lambda_context):
    """Submits the enhanced metric with the given name

    Args:
        metric_name (str): metric name w/o enhanced prefix i.e. "invocations" or "errors"
        lambda_context (dict): Lambda context dict passed to the function by AWS
    """
    if not are_enhanced_metrics_enabled():
        logger.debug(
            "Not submitting enhanced metric %s because enhanced metrics are disabled",
            metric_name,
        )
        return
    tags = get_enhanced_metrics_tags(lambda_context)
    metric_name = "aws.lambda.enhanced." + metric_name
    # Enhanced metrics always use an async submission method, (eg logs or extension).
    lambda_metric(metric_name, 1, timestamp=None, tags=tags, force_async=True)
示例#3
0
def submit_enhanced_metric(metric_name, lambda_context):
    """Submits the enhanced metric with the given name

    Args:
        metric_name (str): metric name w/o enhanced prefix i.e. "invocations" or "errors"
        lambda_context (dict): Lambda context dict passed to the function by AWS
    """
    if not are_enhanced_metrics_enabled():
        logger.debug(
            "Not submitting enhanced metric %s because enhanced metrics are disabled",
            metric_name,
        )
        return

    # Enhanced metrics are always written to logs
    write_metric_point_to_stdout(
        "{}.{}".format(ENHANCED_METRICS_NAMESPACE_PREFIX, metric_name),
        1,
        tags=get_enhanced_metrics_tags(lambda_context),
    )