summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorclkao <clkao@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2010-11-10 17:58:40 +0800
committerclkao <clkao@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2010-11-10 17:58:40 +0800
commitc7f700fc0dd74b72afadea235c23ce6472dbb40a (patch)
treef909b519577dedc52d8fa11289d6419ba0e891e0
parent553f62b46924ccc4b570605bbb59a4e25e006f9b (diff)
downloadpttbbs-c7f700fc0dd74b72afadea235c23ce6472dbb40a.tar
pttbbs-c7f700fc0dd74b72afadea235c23ce6472dbb40a.tar.gz
pttbbs-c7f700fc0dd74b72afadea235c23ce6472dbb40a.tar.bz2
pttbbs-c7f700fc0dd74b72afadea235c23ce6472dbb40a.tar.lz
pttbbs-c7f700fc0dd74b72afadea235c23ce6472dbb40a.tar.xz
pttbbs-c7f700fc0dd74b72afadea235c23ce6472dbb40a.tar.zst
pttbbs-c7f700fc0dd74b72afadea235c23ce6472dbb40a.zip
cpustats for query
git-svn-id: http://opensvn.csie.org/pttbbs/trunk@5239 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
-rw-r--r--pttbbs/include/statistic.h6
-rw-r--r--pttbbs/mbbsd/talk.c9
-rw-r--r--pttbbs/util/shmctl.c2
3 files changed, 14 insertions, 3 deletions
diff --git a/pttbbs/include/statistic.h b/pttbbs/include/statistic.h
index fdc43382..c7528502 100644
--- a/pttbbs/include/statistic.h
+++ b/pttbbs/include/statistic.h
@@ -24,8 +24,8 @@
} while(0);
#else
-#define BEGINSTAT(name)
-#define ENDSTAT(name) STATINC(name)
+#define BEGINSTAT(name) STATINC(name)
+#define ENDSTAT(name)
#endif
@@ -74,6 +74,8 @@ enum { // XXX description in shmctl.c
STAT_DORECOMMEND,
STAT_DORECOMMEND_SCPU,
STAT_DORECOMMEND_UCPU,
+ STAT_QUERY_SCPU,
+ STAT_QUERY_UCPU,
/* insert here. don't forget update shmctl.c */
STAT_NUM,
STAT_MAX=512
diff --git a/pttbbs/mbbsd/talk.c b/pttbbs/mbbsd/talk.c
index 6a5d5a0b..dd863e2f 100644
--- a/pttbbs/mbbsd/talk.c
+++ b/pttbbs/mbbsd/talk.c
@@ -435,7 +435,7 @@ my_query(const char *uident)
userinfo_t *uentp;
static time_t last_query;
- STATINC(STAT_QUERY);
+ BEGINSTAT(STAT_QUERY);
if ((tuid = getuser(uident, &muser))) {
move(1, 0);
clrtobot();
@@ -509,6 +509,9 @@ my_query(const char *uident)
muser.chc_win, muser.chc_lose, muser.chc_tie);
showplans_userec(&muser);
+
+ ENDSTAT(STAT_QUERY);
+
if(HasUserPerm(PERM_SYSOP|PERM_POLICE) )
{
if(vmsg("T: ¶}¥ß»@³æ")=='T')
@@ -523,6 +526,10 @@ my_query(const char *uident)
last_query=now;
return FULLUPDATE;
}
+ else {
+ ENDSTAT(STAT_QUERY);
+ }
+
return DONOTHING;
}
diff --git a/pttbbs/util/shmctl.c b/pttbbs/util/shmctl.c
index a3c28131..4b211a39 100644
--- a/pttbbs/util/shmctl.c
+++ b/pttbbs/util/shmctl.c
@@ -1140,6 +1140,8 @@ int showstat(int argc, char *argv[])
"STAT_DORECOMMEND",
"STAT_DORECOMMEND_SCPU",
"STAT_DORECOMMEND_UCPU",
+ "STAT_QUERY_SCPU",
+ "STAT_QUERY_UCPU",
};
if(argv[1] && strcmp(argv[1],"-c")==0)