1
0
Fork 0

improved mmsc logging on transient errors

This commit is contained in:
bagyenda 2009-01-17 04:31:21 +00:00
parent d62e733178
commit 7d69e70dc3
7 changed files with 34 additions and 27 deletions

View File

@ -1,3 +1,6 @@
2009-01-17 P. A. Bagyenda <bagyenda@dsmagic.com>
* Improved mmsc logging
* mmsc tools other than mmsc no longer attempt to open admin port
2009-01-16 P. A. Bagyenda <bagyenda@dsmagic.com> 2009-01-16 P. A. Bagyenda <bagyenda@dsmagic.com>
* Minor update to mmsc mm1 notifier: cleanup * Minor update to mmsc mm1 notifier: cleanup
2009-01-12 P. A. Bagyenda <bagyenda@dsmagic.com> 2009-01-12 P. A. Bagyenda <bagyenda@dsmagic.com>

View File

@ -54,7 +54,7 @@ int main(int argc, char *argv[])
mms_info(0, "mmsc", NULL," " MM_NAME " MMSC version %s starting", MMSC_VERSION); mms_info(0, "mmsc", NULL," " MM_NAME " MMSC version %s starting", MMSC_VERSION);
settings = mms_load_mmsc_settings(fname,&proxyrelays); settings = mms_load_mmsc_settings(fname,&proxyrelays, 0);
octstr_destroy(fname); octstr_destroy(fname);
if (!settings) if (!settings)

View File

@ -50,7 +50,7 @@ void mms_cleanup_mmsc_settings(MmscSettings *settings)
mms_event_logger_cleanup(); mms_event_logger_cleanup();
} }
MmscSettings *mms_load_mmsc_settings(Octstr *fname, List **proxyrelays) MmscSettings *mms_load_mmsc_settings(Octstr *fname, List **proxyrelays, int skip_admin)
{ {
mCfg *cfg; mCfg *cfg;
Octstr *s; Octstr *s;
@ -348,30 +348,33 @@ MmscSettings *mms_load_mmsc_settings(Octstr *fname, List **proxyrelays)
/* Now load & start admin interface. */ /* Now load & start admin interface. */
mms_cfg_get_int(cfg, grp, octstr_imm("mmsc-admin-port"), &m->admin_port); if (skip_admin)
m->admin_port = -1;
else {
mms_cfg_get_int(cfg, grp, octstr_imm("mmsc-admin-port"), &m->admin_port);
#ifdef HAVE_LIBSSL #ifdef HAVE_LIBSSL
mms_cfg_get_bool(cfg, grp, octstr_imm("admin-port-ssl"), &ssl); mms_cfg_get_bool(cfg, grp, octstr_imm("admin-port-ssl"), &ssl);
#endif #endif
m->admin_pass = mms_cfg_get(cfg, grp, octstr_imm("admin-password")); m->admin_pass = mms_cfg_get(cfg, grp, octstr_imm("admin-password"));
m->admin_allow_ip = mms_cfg_get(cfg, grp, octstr_imm("admin-allow-ip")); m->admin_allow_ip = mms_cfg_get(cfg, grp, octstr_imm("admin-allow-ip"));
m->admin_deny_ip = mms_cfg_get(cfg, grp, octstr_imm("admin-deny-ip")); m->admin_deny_ip = mms_cfg_get(cfg, grp, octstr_imm("admin-deny-ip"));
if (m->admin_port > 0 &&
http_open_port(m->admin_port, ssl)< 0) {
mms_error(0, "mmsc", NULL, "Failed to start admin server on port %d: %s",
(int)m->admin_port, strerror(errno));
m->admin_port = -1;
} else if (m->admin_port > 0 &&
(m->admin_thread = gwthread_create((gwthread_func_t *)admin_handler, m)) < 0) {
mms_error(0, "mmsc", NULL, "Failed to start admin server thread: %s",
strerror(errno));
http_close_port(m->admin_port);
m->admin_port = -1;
} else if (m->admin_pass == NULL)
mms_warning(0, "mmsc", NULL, "Empty or no password supplied for admin port. All requests will be allowed!");
if (m->admin_port > 0 &&
http_open_port(m->admin_port, ssl)< 0) {
mms_error(0, "mmsc", NULL, "Failed to start admin server on port %d: %s",
(int)m->admin_port, strerror(errno));
m->admin_port = -1;
} else if (m->admin_port > 0 &&
(m->admin_thread = gwthread_create((gwthread_func_t *)admin_handler, m)) < 0) {
mms_error(0, "mmsc", NULL, "Failed to start admin server thread: %s",
strerror(errno));
http_close_port(m->admin_port);
m->admin_port = -1;
} else if (m->admin_pass == NULL)
mms_warning(0, "mmsc", NULL, "Empty or no password supplied for admin port. All requests will be allowed!");
}
mms_cfg_destroy_grp(cfg, cgrp); mms_cfg_destroy_grp(cfg, cgrp);
mms_cfg_destroy_grp(cfg, grp); mms_cfg_destroy_grp(cfg, grp);

View File

@ -133,7 +133,7 @@ typedef struct MmscSettings {
} MmscSettings; } MmscSettings;
/* Returns mmsc settings. */ /* Returns mmsc settings. */
MmscSettings *mms_load_mmsc_settings(Octstr *fname, List **proxyrelays); MmscSettings *mms_load_mmsc_settings(Octstr *fname, List **proxyrelays, int skip_admin_port);
MmsVasp *mmsc_load_vasp_from_conf(MmscSettings *m, mCfgGrp *grp, MmsVasp *mmsc_load_vasp_from_conf(MmscSettings *m, mCfgGrp *grp,
List *errors, List *warnings); List *errors, List *warnings);
int mmsc_unload_vasp(MmscSettings *m, Octstr *id); int mmsc_unload_vasp(MmscSettings *m, Octstr *id);

View File

@ -80,7 +80,7 @@ int main(int argc, char *argv[])
mms_info(0, "mmsfromemail", NULL, " MMSC Email2MMS/MM4 Incoming Tool version %s starting", MMSC_VERSION); mms_info(0, "mmsfromemail", NULL, " MMSC Email2MMS/MM4 Incoming Tool version %s starting", MMSC_VERSION);
/* Load settings. */ /* Load settings. */
settings = mms_load_mmsc_settings(fname, &proxyrelays); settings = mms_load_mmsc_settings(fname, &proxyrelays,1);
if (!settings) if (!settings)
panic(0, "No global MMSC configuration, or failed to read conf from <%s>!", octstr_get_cstr(fname)); panic(0, "No global MMSC configuration, or failed to read conf from <%s>!", octstr_get_cstr(fname));

View File

@ -404,7 +404,8 @@ static int sendMsg(MmsEnvelope *e)
} }
/* Write to log */ /* Write to log */
if (res == MMS_SEND_ERROR_FATAL) if (res == MMS_SEND_ERROR_FATAL ||
(res == MMS_SEND_ERROR_TRANSIENT && err != NULL))
mms_error(0, "MM2", NULL, "%s Global Queue MMS Send [%.128s]: From %s, to %s, msgsize=%ld: %s. ", mms_error(0, "MM2", NULL, "%s Global Queue MMS Send [%.128s]: From %s, to %s, msgsize=%ld: %s. ",
SEND_ERROR_STR(res), SEND_ERROR_STR(res),
e->xqfname, e->xqfname,

View File

@ -88,7 +88,7 @@ int main(int argc, char *argv[])
/* Load settings. */ /* Load settings. */
settings = mms_load_mmsc_settings(fname, &proxyrelays); settings = mms_load_mmsc_settings(fname, &proxyrelays,1);
if (!settings) if (!settings)
panic(0, "No global MMSC configuration, or failed to read conf from <%s>!", octstr_get_cstr(fname)); panic(0, "No global MMSC configuration, or failed to read conf from <%s>!", octstr_get_cstr(fname));