81881fe298580da38c5bdb7764c05c03ec278b97 hiram Fri Jan 4 11:54:10 2013 -0800 adding cgiExitTime stderr printout to CGI binaries for apache error_log information diff --git src/hg/hgApi/hgApi.c src/hg/hgApi/hgApi.c index 1c83888..15b1d7d 100644 --- src/hg/hgApi/hgApi.c +++ src/hg/hgApi/hgApi.c @@ -25,30 +25,31 @@ */ #include "common.h" #include "hdb.h" #include "mdb.h" #include "cheapcgi.h" #include "hPrint.h" #include "dystring.h" #include "hui.h" #include "search.h" #include "cv.h" #include "api.h" int main(int argc, char *argv[]) { +long enteredMainTime = clock1000(); struct dyString *output = newDyString(10000); cgiSpoof(&argc, argv); pushWarnHandler(apiWarnAbortHandler); pushAbortHandler(apiWarnAbortHandler); char *database = cgiString("db"); char *cmd = cgiString("cmd"); char *jsonp = cgiOptionalString("jsonp"); if (!hDbExists(database)) errAbort("Invalid database '%s'", database); if (!strcmp(cmd, "defaultPos")) { dyStringPrintf(output, "{\"pos\": \"%s\"}", hDefaultPos(database)); @@ -207,17 +208,18 @@ else dyStringPrintf(output, "{\"error\": \"%d is an invalid %s for this gene\"}", num, sameString(cmd, "codonToPos") ? "codon" : "exon"); } else dyStringPrintf(output, "{\"error\": \"Couldn't find item: %s\"}", name); sqlFreeResult(&sr); hFreeConn(&conn); } else { warn("unknown cmd: %s",cmd); errAbort("Unsupported 'cmd' parameter"); } apiOut(dyStringContents(output), jsonp); +cgiExitTime("hgApi", enteredMainTime); return 0; }