From 58495565c7f50c8929d407914baad0ca5e95cddd Mon Sep 17 00:00:00 2001 From: hadaq Date: Thu, 15 Nov 2001 13:53:44 +0000 Subject: [PATCH] The four daq processes (evtbuild, netmem, memnet, readout) no all store their parameters and statistics to the DB. --- hadaq/default_p.tcl | 5 +++-- hadaq/evtbuild.c | 24 +++++++++++++----------- hadaq/memnet.c | 39 ++++++++++++++++++++++++++++++++++++++- hadaq/netmem.c | 41 ++++++++++++++++++++++++++++++++++++++++- hadaq/readout.c | 37 ++++++++++++++++++++++++++++++++++++- 5 files changed, 130 insertions(+), 16 deletions(-) diff --git a/hadaq/default_p.tcl b/hadaq/default_p.tcl index 2e415f2..73358c0 100644 --- a/hadaq/default_p.tcl +++ b/hadaq/default_p.tcl @@ -4,16 +4,17 @@ set evtbuild(prio) -2 set evtbuild(outdev) file set evtbuild(outpath) /tmp set evtbuild(expid) ha +set evtbuild(nrofmsgs) 1 set netmem(file) ./daq_netmem set netmem(stndln) 0 set netmem(prio) -1 -set netmem(inpath0) ATM:0:50 +set netmem(inpath0) UDP:0:3000 set netmem(nrofmsgs) 1 set netmem(verb) debug set memnet(file) ./daq_memnet set memnet(stndln) 0 set memnet(prio) -1 -set memnet(outpath) ATM:0:50 +set memnet(outpath) UDP:127.0.0.1:3000 set memnet(bandwidth) 0 set readout(file) ./daq_readout #set readout(wmark) 0 diff --git a/hadaq/evtbuild.c b/hadaq/evtbuild.c index 523851c..8f11244 100644 --- a/hadaq/evtbuild.c +++ b/hadaq/evtbuild.c @@ -1,4 +1,4 @@ -static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/evtbuild.c,v 6.33 2001-11-15 12:46:45 hadaq Exp $"; +static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/evtbuild.c,v 6.34 2001-11-15 13:53:44 hadaq Exp $"; #define _POSIX_C_SOURCE 199506L @@ -246,18 +246,20 @@ static void storeInfoStart(const char *n, time_t t, TheArgs *my) { desParam(p); } -static void storeInfoStop(const char *name, time_t t, unsigned long evtsDiscarded, unsigned long evtsComplete, unsigned long bytesWritten) { - Param paramS, *param = ¶mS; - int paramWasFound; +static void storeInfoStop(const char *n, time_t t, Worker *w) { + Param pS, *p = &pS; + int i; char s[20]; - conSetupParam(param, getenv("DAQ_SETUP")); + conSetupParam(p, getenv("DAQ_SETUP")); + + for ( i = 0; i < 32 && strcmp(w->statistics[i].name, "") != 0; i++) { + Param_storeInt(p, n, w->statistics[i].name, w->statistics[i].value); + } strftime(s, 20, "%Y-%m-%dT%H:%M:%S", localtime(&t)); - Param_storeInt(param, name, "evtsdiscarded", evtsDiscarded); - Param_storeInt(param, name, "evtscomplete", evtsComplete); - Param_storeInt(param, name, "byteswritten", bytesWritten); - Param_storeString(param, name, "stopdate", s); - desParam(param); + Param_storeString(p, n, "stopdate", s); + + desParam(p); } /* BUGBUG bailOut not proper yet */ @@ -464,7 +466,7 @@ int main(int argc, char *argv[]) Worker_dump(worker, 0); ourTime = time(NULL); - storeInfoStop(argv[0], ourTime, *evtsDiscarded, *evtsComplete, *bytesWritten); + storeInfoStop(argv[0], ourTime, worker); evt = newEvt(EvtDecoding_64bitAligned, EvtId_runStop, theArgs->runNr, theArgs->expId); diff --git a/hadaq/memnet.c b/hadaq/memnet.c index faf8c71..b4a1060 100644 --- a/hadaq/memnet.c +++ b/hadaq/memnet.c @@ -1,4 +1,4 @@ -static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/memnet.c,v 6.12 2001-11-15 10:20:18 hadaq Exp $"; +static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/memnet.c,v 6.13 2001-11-15 13:53:45 hadaq Exp $"; #define _GNU_C_SOURCE @@ -112,6 +112,40 @@ static int argsFromParam(TheArgs *my, int argc, char *argv[]) { desParam(param); } +static void storeInfoStart(const char *n, time_t t, TheArgs *my) { + Param pS, *p = &pS; + int i; + char s[20]; + + conSetupParam(p, getenv("DAQ_SETUP")); + + strftime(s, 20, "%Y-%m-%dT%H:%M:%S", localtime(&t)); + Param_storeString(p, n, "startdate", s); + Param_storeString(p, n, "outpath", my->outPath); + Param_storeInt(p, n, "bdwidth", my->bandWidth); + Param_storeInt(p, n, "stndln", my->isStandalone); + Param_storeInt(p, n, "prio", my->priority); + Param_storeInt(p, n, "qsize", my->queueSize); + Param_storeString(p, n, "verb", my->verbosity); + desParam(p); +} + +static void storeInfoStop(const char *n, time_t t, Worker *w) { + Param pS, *p = &pS; + int i; + char s[20]; + + conSetupParam(p, getenv("DAQ_SETUP")); + + for ( i = 0; i < 32 && strcmp(w->statistics[i].name, "") != 0; i++) { + Param_storeInt(p, n, w->statistics[i].name, w->statistics[i].value); + } + strftime(s, 20, "%Y-%m-%dT%H:%M:%S", localtime(&t)); + Param_storeString(p, n, "stopdate", s); + + desParam(p); +} + int main(int argc, char *argv[]) { int i; @@ -157,6 +191,7 @@ int main(int argc, char *argv[]) exitStat = EXIT_FAILURE; goto bailOut2; } + storeInfoStart(argv[0], time(NULL), theArgs); Worker_initEnd(worker); while (setjmp(terminateJmp) == 0) { @@ -175,6 +210,8 @@ int main(int argc, char *argv[]) } exitStat = EXIT_SUCCESS; + storeInfoStop(argv[0], time(NULL), worker); + bailOut3: NetTrans_close(netTrans); bailOut2: diff --git a/hadaq/netmem.c b/hadaq/netmem.c index 44abac7..424f351 100644 --- a/hadaq/netmem.c +++ b/hadaq/netmem.c @@ -1,4 +1,4 @@ -static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/netmem.c,v 6.16 2001-11-15 10:20:18 hadaq Exp $"; +static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/netmem.c,v 6.17 2001-11-15 13:53:45 hadaq Exp $"; #define _GNU_C_SOURCE @@ -116,6 +116,43 @@ static int argsFromParam(TheArgs *my, int argc, char *argv[]) { desParam(param); } +static void storeInfoStart(const char *n, time_t t, TheArgs *my) { + Param pS, *p = &pS; + int i; + char s[20]; + + conSetupParam(p, getenv("DAQ_SETUP")); + + strftime(s, 20, "%Y-%m-%dT%H:%M:%S", localtime(&t)); + Param_storeString(p, n, "startdate", s); + for (i = 0; i < my->inPathCnt; i++) { + sprintf(s, "inpath%d", i); + Param_storeString(p, n, s, my->inPath[i]); + } + Param_storeInt(p, n, "nrofmsgs", my->nrOfMsgs); + Param_storeInt(p, n, "stndln", my->isStandalone); + Param_storeInt(p, n, "prio", my->priority); + Param_storeInt(p, n, "qsize", my->queueSize); + Param_storeString(p, n, "verb", my->verbosity); + desParam(p); +} + +static void storeInfoStop(const char *n, time_t t, Worker *w) { + Param pS, *p = &pS; + int i; + char s[20]; + + conSetupParam(p, getenv("DAQ_SETUP")); + + for ( i = 0; i < 32 && strcmp(w->statistics[i].name, "") != 0; i++) { + Param_storeInt(p, n, w->statistics[i].name, w->statistics[i].value); + } + strftime(s, 20, "%Y-%m-%dT%H:%M:%S", localtime(&t)); + Param_storeString(p, n, "stopdate", s); + + desParam(p); +} + int main(int argc, char *argv[]) { int i; @@ -173,6 +210,7 @@ int main(int argc, char *argv[]) hadTu[i] = NULL; hadTuSize[i] = theArgs->queueSize - HadTu_hdrSize(); } + storeInfoStart(argv[0], time(NULL), theArgs); Worker_initEnd(worker); if (setjmp(terminateJmp) == 0) { @@ -198,6 +236,7 @@ int main(int argc, char *argv[]) } } } + storeInfoStop(argv[0], time(NULL), worker); Worker_dump(worker, 0); for (i = 0; i < theArgs->nrOfMsgs; i++) { diff --git a/hadaq/readout.c b/hadaq/readout.c index 57f05b1..e64ae7d 100644 --- a/hadaq/readout.c +++ b/hadaq/readout.c @@ -1,4 +1,4 @@ -static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/readout.c,v 6.19 2001-11-15 10:20:18 hadaq Exp $"; +static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/readout.c,v 6.20 2001-11-15 13:53:45 hadaq Exp $"; #define _POSIX_C_SOURCE 199506L @@ -98,6 +98,39 @@ static int argsFromParam(TheArgs *my, int argc, char *argv[]) { desParam(param); } +static void storeInfoStart(const char *n, time_t t, TheArgs *my) { + Param pS, *p = &pS; + int i; + char s[20]; + + conSetupParam(p, getenv("DAQ_SETUP")); + + strftime(s, 20, "%Y-%m-%dT%H:%M:%S", localtime(&t)); + Param_storeString(p, n, "startdate", s); + Param_storeInt(p, n, "wmark", my->waterMark); + Param_storeInt(p, n, "stndln", my->isStandalone); + Param_storeInt(p, n, "prio", my->priority); + Param_storeInt(p, n, "qsize", my->queueSize); + Param_storeString(p, n, "verb", my->verbosity); + desParam(p); +} + +static void storeInfoStop(const char *n, time_t t, Worker *w) { + Param pS, *p = &pS; + int i; + char s[20]; + + conSetupParam(p, getenv("DAQ_SETUP")); + + for ( i = 0; i < 32 && strcmp(w->statistics[i].name, "") != 0; i++) { + Param_storeInt(p, n, w->statistics[i].name, w->statistics[i].value); + } + strftime(s, 20, "%Y-%m-%dT%H:%M:%S", localtime(&t)); + Param_storeString(p, n, "stopdate", s); + + desParam(p); +} + void main(int argc, char *argv[]) { TheArgs theArgsS, *theArgs = &theArgsS; @@ -141,6 +174,7 @@ void main(int argc, char *argv[]) subevtsRead = Worker_addStatistic(worker, "subevtsRead"); subevtsDataErr = Worker_addStatistic(worker, "subevtsDataErr"); + storeInfoStart(argv[0], time(NULL), theArgs); Worker_initEnd(worker); @@ -186,6 +220,7 @@ void main(int argc, char *argv[]) freeMem(hadTuQueue); ShmTrans_send(shmTrans); } + storeInfoStop(argv[0], time(NULL), worker); Worker_fini(worker); ShmTrans_close(shmTrans); -- 2.43.0