Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
4ade0fa5
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1187
Star
22018
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
4ade0fa5
编写于
11月 02, 2021
作者:
G
Ganlin Zhao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[TD-6452]<feature>: taoskeeper add request metrics
上级
692d589a
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
45 addition
and
26 deletion
+45
-26
src/dnode/src/dnodeShell.c
src/dnode/src/dnodeShell.c
+2
-2
src/inc/dnode.h
src/inc/dnode.h
+2
-5
src/inc/vnode.h
src/inc/vnode.h
+10
-1
src/plugins/http/src/httpMetricsHandle.c
src/plugins/http/src/httpMetricsHandle.c
+2
-2
src/plugins/monitor/src/monMain.c
src/plugins/monitor/src/monMain.c
+20
-10
src/vnode/src/vnodeWrite.c
src/vnode/src/vnodeWrite.c
+9
-6
未找到文件。
src/dnode/src/dnodeShell.c
浏览文件 @
4ade0fa5
...
...
@@ -237,8 +237,8 @@ void *dnodeSendCfgTableToRecv(int32_t vgId, int32_t tid) {
}
}
SStatisInfo
dnodeGetStatisInfo
()
{
SStatisInfo
info
=
{
0
};
S
Dnode
StatisInfo
dnodeGetStatisInfo
()
{
S
Dnode
StatisInfo
info
=
{
0
};
if
(
dnodeGetRunStatus
()
==
TSDB_RUN_STATUS_RUNING
)
{
#ifdef HTTP_EMBEDDED
info
.
httpReqNum
=
httpGetReqCount
();
...
...
src/inc/dnode.h
浏览文件 @
4ade0fa5
...
...
@@ -26,13 +26,10 @@ extern "C" {
typedef
struct
{
int32_t
queryReqNum
;
int32_t
submitReqNum
;
int32_t
submitReqSucNum
;
int32_t
submitRowNum
;
int32_t
submitRowSucNum
;
int32_t
httpReqNum
;
}
SStatisInfo
;
}
S
Dnode
StatisInfo
;
SStatisInfo
dnodeGetStatisInfo
();
S
Dnode
StatisInfo
dnodeGetStatisInfo
();
void
dnodeClearStatisInfo
();
bool
dnodeIsFirstDeploy
();
...
...
src/inc/vnode.h
浏览文件 @
4ade0fa5
...
...
@@ -22,6 +22,12 @@ extern "C" {
#include "trpc.h"
#include "twal.h"
typedef
struct
{
int32_t
submitReqSucNum
;
int32_t
submitRowNum
;
int32_t
submitRowSucNum
;
}
SVnodeStatisInfo
;
typedef
struct
{
int32_t
len
;
void
*
rsp
;
...
...
@@ -62,7 +68,7 @@ int32_t vnodeOpen(int32_t vgId);
int32_t
vnodeAlter
(
void
*
pVnode
,
SCreateVnodeMsg
*
pVnodeCfg
);
int32_t
vnodeSync
(
int32_t
vgId
);
int32_t
vnodeClose
(
int32_t
vgId
);
int32_t
vnodeCompact
(
int32_t
vgId
);
int32_t
vnodeCompact
(
int32_t
vgId
);
// vnodeMgmt
int32_t
vnodeInitMgmt
();
...
...
@@ -80,6 +86,9 @@ int32_t vnodeWriteToWQueue(void *pVnode, void *pHead, int32_t qtype, void *pRpcM
void
vnodeFreeFromWQueue
(
void
*
pVnode
,
SVWriteMsg
*
pWrite
);
int32_t
vnodeProcessWrite
(
void
*
pVnode
,
void
*
pHead
,
int32_t
qtype
,
void
*
pRspRet
);
SVnodeStatisInfo
vnodeGetStatisInfo
();
void
vnodeClearStatisInfo
();
// vnodeSync
void
vnodeConfirmForward
(
void
*
pVnode
,
uint64_t
version
,
int32_t
code
,
bool
force
);
...
...
src/plugins/http/src/httpMetricsHandle.c
浏览文件 @
4ade0fa5
...
...
@@ -164,7 +164,7 @@ bool metricsProcessRequest(HttpContext* pContext) {
}
{
SStatisInfo
info
=
dnodeGetStatisInfo
();
S
Dnode
StatisInfo
info
=
dnodeGetStatisInfo
();
{
char
*
keyReqHttp
=
"req_http"
;
char
*
keyReqSelect
=
"req_select"
;
...
...
@@ -181,4 +181,4 @@ bool metricsProcessRequest(HttpContext* pContext) {
pContext
->
reqType
=
HTTP_REQTYPE_OTHERS
;
httpFreeJsonBuf
(
pContext
);
return
false
;
}
\ No newline at end of file
}
src/plugins/monitor/src/monMain.c
浏览文件 @
4ade0fa5
...
...
@@ -24,6 +24,7 @@
#include "tscUtil.h"
#include "tsclient.h"
#include "dnode.h"
#include "vnode.h"
#include "monitor.h"
#include "taoserror.h"
...
...
@@ -296,8 +297,8 @@ static void monBuildMonitorSql(char *sql, int32_t cmd) {
", io_read float, io_write float"
", req_http int, req_http_rate float"
", req_select int, req_select_rate float"
", req_insert int, req_insert_rate float"
", req_insert_batch int, req_insert_batch_rate float"
", req_insert int, req_insert_
success int, req_insert_
rate float"
", req_insert_batch int, req_insert_batch_
sucesss int, req_insert_batch_
rate float"
", errors int"
", vnodes_num int"
", masters int"
...
...
@@ -416,7 +417,7 @@ static int32_t monBuildBandSql(char *sql) {
}
static
int32_t
monBuildReqSql
(
char
*
sql
)
{
SStatisInfo
info
=
dnodeGetStatisInfo
();
S
Dnode
StatisInfo
info
=
dnodeGetStatisInfo
();
return
sprintf
(
sql
,
", %d, %d, %d)"
,
info
.
httpReqNum
,
info
.
queryReqNum
,
info
.
submitReqNum
);
}
...
...
@@ -700,15 +701,24 @@ static int32_t monBuildNetworkIOSql(char *sql) {
}
static
int32_t
monBuildDnodeReqSql
(
char
*
sql
)
{
SStatisInfo
info
=
dnodeGetStatisInfo
();
SDnodeStatisInfo
dInfo
=
dnodeGetStatisInfo
();
SVnodeStatisInfo
vInfo
=
vnodeGetStatisInfo
();
float
interval
=
tsMonitorInterval
*
1
.
0
;
float
httpReqRate
=
i
nfo
.
httpReqNum
/
interval
;
float
queryReqRate
=
i
nfo
.
queryReqNum
/
interval
;
float
submitReqRate
=
i
nfo
.
submitReqNum
/
interval
;
float
httpReqRate
=
dI
nfo
.
httpReqNum
/
interval
;
float
queryReqRate
=
dI
nfo
.
queryReqNum
/
interval
;
float
submitReqRate
=
dI
nfo
.
submitReqNum
/
interval
;
dnodeClearStatisInfo
();
return
sprintf
(
sql
,
", %d, %f, %d, %f, %d, %f"
,
info
.
httpReqNum
,
httpReqRate
,
info
.
queryReqNum
-
monFetchQueryReqCnt
(),
queryReqRate
,
info
.
submitReqNum
-
monFetchSubmitReqCnt
(),
submitReqRate
);
float
submitRowRate
=
vInfo
.
submitRowNum
/
interval
;
vnodeClearStatisInfo
();
int32_t
monQueryReqCnt
=
monFetchQueryReqCnt
();
int32_t
monSubmitReqCnt
=
monFetchSubmitReqCnt
();
return
sprintf
(
sql
,
", %d, %f, %d, %f, %d, %d, %f, %d, %d, %f"
,
dInfo
.
httpReqNum
,
httpReqRate
,
dInfo
.
queryReqNum
-
monQueryReqCnt
,
queryReqRate
,
vInfo
.
submitRowNum
-
monSubmitReqCnt
,
vInfo
.
submitRowSucNum
-
monSubmitReqCnt
,
submitRowRate
,
dInfo
.
submitReqNum
-
monSubmitReqCnt
,
vInfo
.
submitReqSucNum
-
monSubmitReqCnt
,
submitReqRate
);
}
static
int32_t
monBuildDnodeErrorsSql
(
char
*
sql
)
{
...
...
src/vnode/src/vnodeWrite.c
浏览文件 @
4ade0fa5
...
...
@@ -172,8 +172,8 @@ static int32_t vnodeProcessSubmitMsg(SVnodeObj *pVnode, void *pCont, SRspRet *pR
}
else
{
atomic_fetch_add_32
(
&
tsSubmitReqSucNum
,
1
);
}
atomic_fetch_add_32
(
&
tsSubmitRowNum
,
pRsp
->
numOfRows
);
atomic_fetch_add_32
(
&
tsSubmitRowSucNum
,
pRsp
->
affectedRows
);
atomic_fetch_add_32
(
&
tsSubmitRowNum
,
ntohl
(
pRsp
->
numOfRows
)
);
atomic_fetch_add_32
(
&
tsSubmitRowSucNum
,
ntohl
(
pRsp
->
affectedRows
)
);
return
code
;
}
...
...
@@ -436,10 +436,13 @@ void vnodeWaitWriteCompleted(SVnodeObj *pVnode) {
taosMsleep
(
900
);
}
void
vnodeGetStatisInfo
(
SStatisInfo
*
info
)
{
info
->
submitReqSucNum
=
atomic_load_32
(
&
tsSubmitReqSucNum
);
info
->
submitRowNum
=
atomic_load_32
(
&
tsSubmitRowNum
);
info
->
submitRowSucNum
=
atomic_load_32
(
&
tsSubmitRowSucNum
);
SVnodeStatisInfo
vnodeGetStatisInfo
()
{
SVnodeStatisInfo
info
=
{
0
};
info
.
submitReqSucNum
=
atomic_load_32
(
&
tsSubmitReqSucNum
);
info
.
submitRowNum
=
atomic_load_32
(
&
tsSubmitRowNum
);
info
.
submitRowSucNum
=
atomic_load_32
(
&
tsSubmitRowSucNum
);
return
info
;
}
void
vnodeClearStatisInfo
()
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录