Пример #1
0
def install(config=None):
    global shutdown_registered
    if config is not None:
        scout_config.set(**config)
    scout_config.log()

    if os.name == "nt":
        logger.info("APM Not Launching on PID: %s - Windows is not supported",
                    os.getpid())
        return False

    if not scout_config.value("monitor"):
        logger.info(
            "APM Not Launching on PID: %s - Configuration 'monitor' is not true",
            os.getpid(),
        )
        return False

    instruments.ensure_all_installed()
    objtrace.enable()

    logger.debug("APM Launching on PID: %s", os.getpid())
    launched = CoreAgentManager().launch()

    report_app_metadata()
    if launched:
        # Stop the thread to avoid running threads pre-fork
        CoreAgentSocketThread.ensure_stopped()

    if scout_config.value(
            "shutdown_timeout_seconds") > 0.0 and not shutdown_registered:
        atexit.register(shutdown)
        shutdown_registered = True

    return True
Пример #2
0
def core_agent_manager(core_agent_dir):
    scout_config.set(core_agent_dir=core_agent_dir)
    core_agent_manager = CoreAgentManager()
    try:
        yield core_agent_manager
    finally:
        assert not core_agent_is_running()
        scout_config.reset_all()
    def test_config_file_old_name_takes_precedence(self):
        scout_config.set(config_file="foo", core_agent_config_file="bar")

        try:
            result = CoreAgentManager().config_file()
        finally:
            scout_config.reset_all()

        assert result == ["--config-file", "foo"]
    def test_config_file(self):
        scout_config.set(core_agent_config_file="foo")

        try:
            result = CoreAgentManager().config_file()
        finally:
            scout_config.reset_all()

        assert result == ["--config-file", "foo"]
    def test_log_level_old_name_takes_precedence(self):
        scout_config.set(log_level="foo", core_agent_log_level="bar")

        try:
            result = CoreAgentManager().log_level()
        finally:
            scout_config.reset_all()

        assert result == ["--log-level", "foo"]
    def test_log_level(self):
        scout_config.set(core_agent_log_level="foo")

        try:
            result = CoreAgentManager().log_level()
        finally:
            scout_config.reset_all()

        assert result == ["--log-level", "foo"]
    def test_socket_path_tcp(self):
        scout_config.set(core_agent_socket_path="tcp://127.0.0.1:7894")

        try:
            result = CoreAgentManager().socket_path()
        finally:
            scout_config.reset_all()

        assert result == ["--tcp", "127.0.0.1:7894"]
    def test_socket_path_path(self):
        scout_config.set(core_agent_socket_path="/tmp/foo.sock")

        try:
            result = CoreAgentManager().socket_path()
        finally:
            scout_config.reset_all()

        assert result == ["--socket", "/tmp/foo.sock"]