mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2026-06-13 03:31:45 +08:00
Merge branch 'feature/keep_alive_monk' of https://gitee.com/xia-chu/ZLMediaKit
This commit is contained in:
@@ -348,6 +348,36 @@ Value makeMediaSourceJson(MediaSource &media){
|
||||
return item;
|
||||
}
|
||||
|
||||
Value getStatisticJson() {
|
||||
Value val(objectValue);
|
||||
val["MediaSource"] = (Json::UInt64)(ObjectStatistic<MediaSource>::count());
|
||||
val["MultiMediaSourceMuxer"] = (Json::UInt64)(ObjectStatistic<MultiMediaSourceMuxer>::count());
|
||||
|
||||
val["TcpServer"] = (Json::UInt64)(ObjectStatistic<TcpServer>::count());
|
||||
val["TcpSession"] = (Json::UInt64)(ObjectStatistic<TcpSession>::count());
|
||||
val["UdpServer"] = (Json::UInt64)(ObjectStatistic<UdpServer>::count());
|
||||
val["UdpSession"] = (Json::UInt64)(ObjectStatistic<UdpSession>::count());
|
||||
val["TcpClient"] = (Json::UInt64)(ObjectStatistic<TcpClient>::count());
|
||||
val["Socket"] = (Json::UInt64)(ObjectStatistic<Socket>::count());
|
||||
|
||||
val["FrameImp"] = (Json::UInt64)(ObjectStatistic<FrameImp>::count());
|
||||
val["Frame"] = (Json::UInt64)(ObjectStatistic<Frame>::count());
|
||||
|
||||
val["Buffer"] = (Json::UInt64)(ObjectStatistic<Buffer>::count());
|
||||
val["BufferRaw"] = (Json::UInt64)(ObjectStatistic<BufferRaw>::count());
|
||||
val["BufferLikeString"] = (Json::UInt64)(ObjectStatistic<BufferLikeString>::count());
|
||||
val["BufferList"] = (Json::UInt64)(ObjectStatistic<BufferList>::count());
|
||||
|
||||
val["RtpPacket"] = (Json::UInt64)(ObjectStatistic<RtpPacket>::count());
|
||||
val["RtmpPacket"] = (Json::UInt64)(ObjectStatistic<RtmpPacket>::count());
|
||||
#ifdef ENABLE_MEM_DEBUG
|
||||
auto bytes = getTotalMemUsage();
|
||||
val["totalMemUsage"] = (Json::UInt64)bytes;
|
||||
val["totalMemUsageMB"] = (int)(bytes / 1024 / 1024);
|
||||
#endif
|
||||
return val;
|
||||
}
|
||||
|
||||
/**
|
||||
* 安装api接口
|
||||
* 所有api都支持GET和POST两种方式
|
||||
@@ -1150,31 +1180,7 @@ void installWebApi() {
|
||||
|
||||
api_regist("/index/api/getStatistic",[](API_ARGS_MAP){
|
||||
CHECK_SECRET();
|
||||
val["data"]["MediaSource"] = (Json::UInt64)(ObjectStatistic<MediaSource>::count());
|
||||
val["data"]["MultiMediaSourceMuxer"] = (Json::UInt64)(ObjectStatistic<MultiMediaSourceMuxer>::count());
|
||||
|
||||
val["data"]["TcpServer"] = (Json::UInt64)(ObjectStatistic<TcpServer>::count());
|
||||
val["data"]["TcpSession"] = (Json::UInt64)(ObjectStatistic<TcpSession>::count());
|
||||
val["data"]["UdpServer"] = (Json::UInt64)(ObjectStatistic<UdpServer>::count());
|
||||
val["data"]["UdpSession"] = (Json::UInt64)(ObjectStatistic<UdpSession>::count());
|
||||
val["data"]["TcpClient"] = (Json::UInt64)(ObjectStatistic<TcpClient>::count());
|
||||
val["data"]["Socket"] = (Json::UInt64)(ObjectStatistic<Socket>::count());
|
||||
|
||||
val["data"]["FrameImp"] = (Json::UInt64)(ObjectStatistic<FrameImp>::count());
|
||||
val["data"]["Frame"] = (Json::UInt64)(ObjectStatistic<Frame>::count());
|
||||
|
||||
val["data"]["Buffer"] = (Json::UInt64)(ObjectStatistic<Buffer>::count());
|
||||
val["data"]["BufferRaw"] = (Json::UInt64)(ObjectStatistic<BufferRaw>::count());
|
||||
val["data"]["BufferLikeString"] = (Json::UInt64)(ObjectStatistic<BufferLikeString>::count());
|
||||
val["data"]["BufferList"] = (Json::UInt64)(ObjectStatistic<BufferList>::count());
|
||||
|
||||
val["data"]["RtpPacket"] = (Json::UInt64)(ObjectStatistic<RtpPacket>::count());
|
||||
val["data"]["RtmpPacket"] = (Json::UInt64)(ObjectStatistic<RtmpPacket>::count());
|
||||
#ifdef ENABLE_MEM_DEBUG
|
||||
auto bytes = getTotalMemUsage();
|
||||
val["data"]["totalMemUsage"] = (Json::UInt64)bytes;
|
||||
val["data"]["totalMemUsageMB"] = (int)(bytes / 1024 / 1024);
|
||||
#endif
|
||||
val["data"] = getStatisticJson();
|
||||
});
|
||||
|
||||
#ifdef ENABLE_WEBRTC
|
||||
|
||||
Reference in New Issue
Block a user