/** * Set up everything (shared memory, etc.) so we can log, just as we would if we were * really running (as opposed to running in test harness mode). */ void logging_setup(int logging_level) { // destroy the cache, if it exists am_cache_destroy(); assert_int_equal(am_init(AM_DEFAULT_AGENT_ID, NULL), AM_SUCCESS); am_init_worker(AM_DEFAULT_AGENT_ID); sprintf(log_file_name, "log%d", rand() % 1000000); // Note that we need a valid audit file name, even though we never audit sprintf(audit_file_name, "aud%d", rand() % 1000000); am_log_register_instance(getpid(), log_file_name, logging_level, TEN_MB, audit_file_name, AM_LOG_LEVEL_AUDIT, ONE_MB, NULL); am_init_worker(AM_DEFAULT_AGENT_ID); }
static void amagent_worker_init(apr_pool_t *p, server_rec *s) { /* worker process init */ LOG_S(APLOG_DEBUG, s, "amagent_worker_init() %d", getpid()); am_init_worker(); apr_pool_cleanup_register(p, s, amagent_worker_cleanup, apr_pool_cleanup_null); }