@@ -3021,33 +3021,31 @@ static int32_t vnodeSaveOneAuditRecord(SVnode *pVnode, int64_t ver, SJson *pJson
30213021 vTrace ("vgId:%d, affectedRow:%d" , TD_VID (pVnode ), pSubmitRsp -> affectedRows );
30223022
30233023_exit :
3024- if (code != 0 )
3024+ if (code != 0 ) {
30253025 vError ("vgId:%d, failed to save one AuditRecord at line:%d, since %s" , TD_VID (pVnode ), lino , tstrerror (code ));
3026+ } else {
3027+ // update statistics only on success
3028+ (void )atomic_add_fetch_64 (& pVnode -> statis .nInsert , pSubmitRsp -> affectedRows );
3029+ (void )atomic_add_fetch_64 (& pVnode -> statis .nInsertSuccess , pSubmitRsp -> affectedRows );
3030+ (void )atomic_add_fetch_64 (& pVnode -> statis .nBatchInsert , 1 );
3031+ (void )atomic_add_fetch_64 (& pVnode -> statis .nBatchInsertSuccess , 1 );
30263032
3027- // update statistics
3028- ( void ) atomic_add_fetch_64 ( & pVnode -> statis . nInsert , pSubmitRsp -> affectedRows );
3029- ( void ) atomic_add_fetch_64 ( & pVnode -> statis . nInsertSuccess , pSubmitRsp -> affectedRows );
3030- ( void ) atomic_add_fetch_64 ( & pVnode -> statis . nBatchInsert , 1 );
3033+ // update metrics
3034+ METRICS_UPDATE ( pVnode -> writeMetrics . total_requests , METRIC_LEVEL_LOW , 1 );
3035+ METRICS_UPDATE ( pVnode -> writeMetrics . total_rows , METRIC_LEVEL_HIGH , pSubmitRsp -> affectedRows );
3036+ // METRICS_UPDATE( pVnode->writeMetrics.total_bytes, METRIC_LEVEL_LOW, pMsg->header.contLen );
30313037
3032- // update metrics
3033- METRICS_UPDATE (pVnode -> writeMetrics .total_requests , METRIC_LEVEL_LOW , 1 );
3034- METRICS_UPDATE (pVnode -> writeMetrics .total_rows , METRIC_LEVEL_HIGH , pSubmitRsp -> affectedRows );
3035- // METRICS_UPDATE(pVnode->writeMetrics.total_bytes, METRIC_LEVEL_LOW, pMsg->header.contLen);
3036-
3037- if (tsEnableMonitor && tsMonitorFqdn [0 ] != 0 && tsMonitorPort != 0 && pSubmitRsp -> affectedRows > 0 &&
3038- strlen (RPC_MSG_USER (pOriginalMsg )) > 0 && tsInsertCounter != NULL ) {
3039- const char * sample_labels [] = {VNODE_METRIC_TAG_VALUE_INSERT_AFFECTED_ROWS ,
3040- pVnode -> monitor .strClusterId ,
3041- pVnode -> monitor .strDnodeId ,
3042- tsLocalEp ,
3043- pVnode -> monitor .strVgId ,
3044- RPC_MSG_USER (pOriginalMsg ),
3045- "Success" };
3046- int tv = taos_counter_add (tsInsertCounter , pSubmitRsp -> affectedRows , sample_labels );
3047- }
3048-
3049- if (code == 0 ) {
3050- (void )atomic_add_fetch_64 (& pVnode -> statis .nBatchInsertSuccess , 1 );
3038+ if (tsEnableMonitor && tsMonitorFqdn [0 ] != 0 && tsMonitorPort != 0 && pSubmitRsp -> affectedRows > 0 &&
3039+ strlen (RPC_MSG_USER (pOriginalMsg )) > 0 && tsInsertCounter != NULL ) {
3040+ const char * sample_labels [] = {VNODE_METRIC_TAG_VALUE_INSERT_AFFECTED_ROWS ,
3041+ pVnode -> monitor .strClusterId ,
3042+ pVnode -> monitor .strDnodeId ,
3043+ tsLocalEp ,
3044+ pVnode -> monitor .strVgId ,
3045+ RPC_MSG_USER (pOriginalMsg ),
3046+ "Success" };
3047+ int tv = taos_counter_add (tsInsertCounter , pSubmitRsp -> affectedRows , sample_labels );
3048+ }
30513049 }
30523050
30533051 // clear
@@ -3074,6 +3072,12 @@ static int32_t vnodeProcessAuditRecordReq(SVnode *pVnode, int64_t ver, void *pRe
30743072 return code ;
30753073 }
30763074
3075+ if (req .data == NULL ) {
3076+ vError ("vgId:%d, audit record data is NULL" , TD_VID (pVnode ));
3077+ code = TSDB_CODE_INVALID_MSG ;
3078+ return code ;
3079+ }
3080+
30773081 vTrace ("vgId:%d, start to process AuditRecord Req, data:%s" , TD_VID (pVnode ), req .data );
30783082
30793083 SJson * pJson = NULL ;
@@ -3113,6 +3117,11 @@ static int32_t vnodeProcessAuditRecordReq(SVnode *pVnode, int64_t ver, void *pRe
31133117 vTrace ("%d items in records" , size );
31143118 for (int32_t i = 0 ; i < size ; ++ i ) {
31153119 SJson * pRecord = tjsonGetArrayItem (pRecords , i );
3120+ if (pRecord == NULL ) {
3121+ vError ("vgId:%d, failed to get array item %d" , TD_VID (pVnode ), i );
3122+ code = TSDB_CODE_INVALID_JSON_FORMAT ;
3123+ TAOS_CHECK_GOTO (code , & lino , _exit );
3124+ }
31163125 TAOS_CHECK_GOTO (vnodeSaveOneAuditRecord (pVnode , ver , pRecord , pTagSchema , suid , pSchema , pOriginalMsg ), & lino ,
31173126 _exit );
31183127 }
0 commit comments