Example #1
0
def update_config(m2ee, app_name):
    if not is_enabled() or not _is_installed():
        return

    # Telegraf config, taking over defaults from telegraf.conf from the distro
    logger.debug("creating telegraf config")
    _create_config_file({
        "interval": "10s",
        "round_interval": True,
        "metric_batch_size": 1000,
        "metric_buffer_limit": 10000,
        "collection_jitter": "0s",
        "flush_interval": "10s",
        "flush_jitter": "5s",
        "precision": "",
        "debug": False,
        "logfile": "",
        "hostname": buildpackutil.get_hostname(),
        "omit_hostname": False,
    })

    _write_config("[global_tags]", _get_tags())
    _write_config(
        "[[inputs.statsd]]",
        {
            "protocol": "udp",
            "max_tcp_connections": 250,
            "tcp_keep_alive": False,
            "service_address": ":8125",
            "delete_gauges": True,
            "delete_counters": True,
            "delete_sets": True,
            "delete_timings": True,
            "percentiles": [90],
            "metric_separator": ".",
            "parse_data_dog_tags": True,
            "allowed_pending_messages": 10000,
            "percentile_limit": 1000,
        },
    )

    # Forward metrics also to DataDog when enabled
    if datadog.is_enabled():
        _write_config("[[outputs.datadog]]", {"apikey": datadog.get_api_key()})

    # # Write http_oputs (one or array)
    http_configs = json.loads(_get_appmetrics_target())
    if type(http_configs) is list:
        for http_config in http_configs:
            _write_http_output_config(http_config)
    else:
        _write_http_output_config(http_configs)

    # Enable Java Agent on MxRuntime to
    datadog.enable_runtime_agent(m2ee)
def update_config(m2ee, app_name):
    if not is_enabled() or not _is_installed():
        return

    # Telegraf config, taking over defaults from telegraf.conf from the distro
    logger.debug('creating telegraf config')
    _create_config_file({
        'interval': '10s',
        'round_interval': True,
        'metric_batch_size': 1000,
        'metric_buffer_limit': 10000,
        'collection_jitter': '0s',
        'flush_jitter': '10s',
        'precision': '',
        'debug': False,
        'logfile': '',
        'hostname': buildpackutil.get_hostname(),
        'omit_hostname': False
    })

    _write_config('[global_tags]', _get_tags())
    _write_config(
        '[[inputs.statsd]]', {
            'protocol': 'udp',
            'max_tcp_connections': 250,
            'tcp_keep_alive': False,
            'service_address': ':8125',
            'delete_gauges': True,
            'delete_counters': True,
            'delete_sets': True,
            'delete_timings': True,
            'percentiles': [90],
            'metric_separator': '_',
            'parse_data_dog_tags': True,
            'allowed_pending_messages': 10000,
            'percentile_limit': 1000
        })

    # Forward metrics also to DataDog when enabled
    if datadog.is_enabled():
        _write_config('[[outputs.datadog]]', {'apikey': datadog.get_api_key()})

    # # Write http_oputs (one or array)
    http_configs = json.loads(_get_appmetrics_target())
    if type(http_configs) is list:
        for http_config in http_configs:
            _write_http_output_config(http_config)
    else:
        _write_http_output_config(http_configs)

    # Enable Java Agent on MxRuntime to
    datadog.enable_runtime_agent(m2ee)
Example #3
0
def update_config(m2ee, app_name):
    if not is_enabled() or not _is_installed():
        return

    # Telegraf config, taking over defaults from telegraf.conf from the distro
    logger.debug("creating telegraf config")
    _create_config_file(
        {
            "interval": "10s",
            "round_interval": True,
            "metric_batch_size": 1000,
            "metric_buffer_limit": 10000,
            "collection_jitter": "0s",
            "flush_jitter": "10s",
            "precision": "",
            "debug": False,
            "logfile": "",
            "hostname": buildpackutil.get_hostname(),
            "omit_hostname": False,
        }
    )

    _write_config("[global_tags]", _get_tags())
    _write_config(
        "[[inputs.statsd]]",
        {
            "protocol": "udp",
            "max_tcp_connections": 250,
            "tcp_keep_alive": False,
            "service_address": ":8125",
            "delete_gauges": True,
            "delete_counters": True,
            "delete_sets": True,
            "delete_timings": True,
            "percentiles": [90],
            "metric_separator": ".",
            "parse_data_dog_tags": True,
            "allowed_pending_messages": 10000,
            "percentile_limit": 1000,
        },
    )

    # Forward metrics also to DataDog when enabled
    if datadog.is_enabled():
        _write_config("[[outputs.datadog]]", {"apikey": datadog.get_api_key()})

    # Expose metrics to Azure Application Insights when enabled
    if _get_appmetrics_aai() is not None:
        _write_aai_output_config()
    
    # Collect statistics from Mendix admin port
    _write_mendix_admin_http_input_config("runtime_statistics", "mendix_runtime_memory", "feedback.memory", ["used_heap", "committed_heap", "init_heap", "max_heap", "used_nonheap", "committed_nonheap", "init_nonheap", "max_nonheap"])
    _write_mendix_admin_http_input_config("runtime_statistics", "mendix_runtime_connectionbus", "feedback.connectionbus", ["select", "insert", "update", "delete", "transaction"])
    _write_mendix_admin_http_input_config("runtime_statistics", "mendix_runtime_sessions", "feedback.sessions", ["named_users", "anonymous_sessions", "named_user_sessions"])
    _write_mendix_admin_http_input_config("server_statistics", "mendix_runtime_threads", "feedback.threadpool", ["threads"])
    _write_mendix_admin_http_input_config("server_statistics", "mendix_runtime_connections", "feedback.jetty", ["current_connections"])
    _write_mendix_admin_http_input_config("get_logged_in_user_names", "mendix_runtime_loggedinusers", "feedback", ["count"])
    _write_mendix_admin_http_named_input_config("runtime_statistics", "mendix_runtime_requests_", "name", "feedback.requests", ["value"])

    _write_cpu_input_config()

    # # Write http_oputs (one or array)
    if _get_appmetrics_target() is not None:
        http_configs = json.loads(_get_appmetrics_target())
        if type(http_configs) is list:
            for http_config in http_configs:
                _write_http_output_config(http_config)
        else:
            _write_http_output_config(http_configs)

    # Enable Java Agent on MxRuntime to
    datadog.enable_runtime_agent(m2ee)