projects
/
collectd.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
5957693
)
oracle plugin: Add database name and query name (if applicable) to error messages.
author
Florian Forster
<octo@collectd.org>
Tue, 19 Jun 2012 11:14:32 +0000
(13:14 +0200)
committer
Florian Forster
<octo@collectd.org>
Tue, 19 Jun 2012 11:14:32 +0000
(13:14 +0200)
src/oracle.c
patch
|
blob
|
history
diff --git
a/src/oracle.c
b/src/oracle.c
index
79725d7
..
828fc2e
100644
(file)
--- a/
src/oracle.c
+++ b/
src/oracle.c
@@
-86,6
+86,7
@@
OCIError *oci_error = NULL;
* Functions
*/
static void o_report_error (const char *where, /* {{{ */
* Functions
*/
static void o_report_error (const char *where, /* {{{ */
+ const char *db_name, const char *query_name,
const char *what, OCIError *eh)
{
char buffer[2048];
const char *what, OCIError *eh)
{
char buffer[2048];
@@
-93,6
+94,11
@@
static void o_report_error (const char *where, /* {{{ */
int status;
unsigned int record_number;
int status;
unsigned int record_number;
+ if (db_name == NULL)
+ db_name = "(none)";
+ if (query_name == NULL)
+ query_name = "(none)";
+
/* An operation may cause / return multiple errors. Loop until we have
* handled all errors available (with a fail-save limit of 16). */
for (record_number = 1; record_number <= 16; record_number++)
/* An operation may cause / return multiple errors. Loop until we have
* handled all errors available (with a fail-save limit of 16). */
for (record_number = 1; record_number <= 16; record_number++)
@@
-122,12
+128,14
@@
static void o_report_error (const char *where, /* {{{ */
buffer[buffer_length] = 0;
}
buffer[buffer_length] = 0;
}
- ERROR ("oracle plugin: %s: %s failed: %s", where, what, buffer);
+ ERROR ("oracle plugin: %s (db = %s, query = %s): %s failed: %s",
+ where, db_name, query_name, what, buffer);
}
else
{
}
else
{
- ERROR ("oracle plugin: %s: %s failed. Additionally, OCIErrorGet failed with status %i.",
- where, what, status);
+ ERROR ("oracle plugin: %s (db = %s, query = %s): %s failed. "
+ "Additionally, OCIErrorGet failed with status %i.",
+ where, db_name, query_name, what, status);
return;
}
}
return;
}
}
@@
-427,7
+435,8
@@
static int o_read_database_query (o_database_t *db, /* {{{ */
OCI_HTYPE_STMT, /* user_data_size = */ 0, /* user_data = */ NULL);
if (status != OCI_SUCCESS)
{
OCI_HTYPE_STMT, /* user_data_size = */ 0, /* user_data = */ NULL);
if (status != OCI_SUCCESS)
{
- o_report_error ("o_read_database_query", "OCIHandleAlloc", oci_error);
+ o_report_error ("o_read_database_query", db->name,
+ udb_query_get_name (q), "OCIHandleAlloc", oci_error);
oci_statement = NULL;
return (-1);
}
oci_statement = NULL;
return (-1);
}
@@
-438,7
+447,8
@@
static int o_read_database_query (o_database_t *db, /* {{{ */
/* mode = */ OCI_DEFAULT);
if (status != OCI_SUCCESS)
{
/* mode = */ OCI_DEFAULT);
if (status != OCI_SUCCESS)
{
- o_report_error ("o_read_database_query", "OCIStmtPrepare", oci_error);
+ o_report_error ("o_read_database_query", db->name,
+ udb_query_get_name (q), "OCIStmtPrepare", oci_error);
OCIHandleFree (oci_statement, OCI_HTYPE_STMT);
oci_statement = NULL;
return (-1);
OCIHandleFree (oci_statement, OCI_HTYPE_STMT);
oci_statement = NULL;
return (-1);
@@
-462,10
+472,8
@@
static int o_read_database_query (o_database_t *db, /* {{{ */
/* mode = */ OCI_DEFAULT);
if (status != OCI_SUCCESS)
{
/* mode = */ OCI_DEFAULT);
if (status != OCI_SUCCESS)
{
- DEBUG ("oracle plugin: o_read_database_query: status = %i (%#x)", status, status);
- o_report_error ("o_read_database_query", "OCIStmtExecute", oci_error);
- ERROR ("oracle plugin: o_read_database_query: "
- "Failing statement was: %s", udb_query_get_statement (q));
+ o_report_error ("o_read_database_query", db->name, udb_query_get_name (q),
+ "OCIStmtExecute", oci_error);
return (-1);
} /* }}} */
return (-1);
} /* }}} */
@@
-478,7
+486,8
@@
static int o_read_database_query (o_database_t *db, /* {{{ */
OCI_ATTR_PARAM_COUNT, oci_error);
if (status != OCI_SUCCESS)
{
OCI_ATTR_PARAM_COUNT, oci_error);
if (status != OCI_SUCCESS)
{
- o_report_error ("o_read_database_query", "OCIAttrGet", oci_error);
+ o_report_error ("o_read_database_query", db->name,
+ udb_query_get_name (q), "OCIAttrGet", oci_error);
return (-1);
} /* }}} */
return (-1);
} /* }}} */
@@
-556,8
+565,10
@@
static int o_read_database_query (o_database_t *db, /* {{{ */
if (status != OCI_SUCCESS)
{
/* This is probably alright */
if (status != OCI_SUCCESS)
{
/* This is probably alright */
- DEBUG ("oracle plugin: o_read_database_query: status = %#x (= %i);", status, status);
- o_report_error ("o_read_database_query", "OCIParamGet", oci_error);
+ DEBUG ("oracle plugin: o_read_database_query: status = %#x (= %i);",
+ status, status);
+ o_report_error ("o_read_database_query", db->name,
+ udb_query_get_name (q), "OCIParamGet", oci_error);
status = OCI_SUCCESS;
break;
}
status = OCI_SUCCESS;
break;
}
@@
-569,8
+580,8
@@
static int o_read_database_query (o_database_t *db, /* {{{ */
if (status != OCI_SUCCESS)
{
OCIDescriptorFree (oci_param, OCI_DTYPE_PARAM);
if (status != OCI_SUCCESS)
{
OCIDescriptorFree (oci_param, OCI_DTYPE_PARAM);
- o_report_error ("o_read_database_query",
"OCIAttrGet (OCI_ATTR_NAME)"
,
- oci_error);
+ o_report_error ("o_read_database_query",
db->name
,
+
udb_query_get_name (q), "OCIAttrGet (OCI_ATTR_NAME)",
oci_error);
continue;
}
continue;
}
@@
-595,7
+606,8
@@
static int o_read_database_query (o_database_t *db, /* {{{ */
NULL, NULL, NULL, OCI_DEFAULT);
if (status != OCI_SUCCESS)
{
NULL, NULL, NULL, OCI_DEFAULT);
if (status != OCI_SUCCESS)
{
- o_report_error ("o_read_database_query", "OCIDefineByPos", oci_error);
+ o_report_error ("o_read_database_query", db->name,
+ udb_query_get_name (q), "OCIDefineByPos", oci_error);
continue;
}
} /* for (j = 1; j <= param_counter; j++) */
continue;
}
} /* for (j = 1; j <= param_counter; j++) */
@@
-626,7
+638,8
@@
static int o_read_database_query (o_database_t *db, /* {{{ */
}
else if ((status != OCI_SUCCESS) && (status != OCI_SUCCESS_WITH_INFO))
{
}
else if ((status != OCI_SUCCESS) && (status != OCI_SUCCESS_WITH_INFO))
{
- o_report_error ("o_read_database_query", "OCIStmtFetch2", oci_error);
+ o_report_error ("o_read_database_query", db->name,
+ udb_query_get_name (q), "OCIStmtFetch2", oci_error);
break;
}
break;
}
@@
-663,7
+676,8
@@
static int o_read_database (o_database_t *db) /* {{{ */
OCI_ATTR_SERVER, oci_error);
if (status != OCI_SUCCESS)
{
OCI_ATTR_SERVER, oci_error);
if (status != OCI_SUCCESS)
{
- o_report_error ("o_read_database", "OCIAttrGet", oci_error);
+ o_report_error ("o_read_database", db->name, NULL, "OCIAttrGet",
+ oci_error);
return (-1);
}
return (-1);
}
@@
-679,7
+693,8
@@
static int o_read_database (o_database_t *db) /* {{{ */
OCI_ATTR_SERVER_STATUS, oci_error);
if (status != OCI_SUCCESS)
{
OCI_ATTR_SERVER_STATUS, oci_error);
if (status != OCI_SUCCESS)
{
- o_report_error ("o_read_database", "OCIAttrGet", oci_error);
+ o_report_error ("o_read_database", db->name, NULL, "OCIAttrGet",
+ oci_error);
return (-1);
}
}
return (-1);
}
}
@@
-706,7
+721,7
@@
static int o_read_database (o_database_t *db) /* {{{ */
ssnprintf (errfunc, sizeof (errfunc), "OCILogon(\"%s\")", db->connect_id);
ssnprintf (errfunc, sizeof (errfunc), "OCILogon(\"%s\")", db->connect_id);
- o_report_error ("o_read_database", errfunc, oci_error);
+ o_report_error ("o_read_database",
db->name, NULL,
errfunc, oci_error);
DEBUG ("oracle plugin: OCILogon (%s): db->oci_service_context = %p;",
db->connect_id, db->oci_service_context);
db->oci_service_context = NULL;
DEBUG ("oracle plugin: OCILogon (%s): db->oci_service_context = %p;",
db->connect_id, db->oci_service_context);
db->oci_service_context = NULL;