(ws_connect) display sent/received bytes statistics on exit
This commit is contained in:
parent
6d0c568aaa
commit
140a21c8b3
@ -1,6 +1,10 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
All changes to this project will be documented in this file.
|
All changes to this project will be documented in this file.
|
||||||
|
|
||||||
|
## [8.1.6] - 2020-02-26
|
||||||
|
|
||||||
|
(ws_connect) display sent/received bytes statistics on exit
|
||||||
|
|
||||||
## [8.1.5] - 2020-02-23
|
## [8.1.5] - 2020-02-23
|
||||||
|
|
||||||
(server) give thread name to some usual worker threads / unittest is broken !!
|
(server) give thread name to some usual worker threads / unittest is broken !!
|
||||||
|
@ -6,4 +6,4 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#define IX_WEBSOCKET_VERSION "8.1.4"
|
#define IX_WEBSOCKET_VERSION "8.1.6"
|
||||||
|
@ -30,6 +30,9 @@ namespace ix
|
|||||||
void start();
|
void start();
|
||||||
void stop();
|
void stop();
|
||||||
|
|
||||||
|
int getSentBytes() { return _sentBytes; }
|
||||||
|
int getReceivedBytes() { return _receivedBytes; }
|
||||||
|
|
||||||
void sendMessage(const std::string& text);
|
void sendMessage(const std::string& text);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@ -38,6 +41,8 @@ namespace ix
|
|||||||
ix::WebSocket _webSocket;
|
ix::WebSocket _webSocket;
|
||||||
bool _disablePerMessageDeflate;
|
bool _disablePerMessageDeflate;
|
||||||
bool _binaryMode;
|
bool _binaryMode;
|
||||||
|
std::atomic<int> _receivedBytes;
|
||||||
|
std::atomic<int> _sentBytes;
|
||||||
|
|
||||||
void log(const std::string& msg);
|
void log(const std::string& msg);
|
||||||
WebSocketHttpHeaders parseHeaders(const std::string& data);
|
WebSocketHttpHeaders parseHeaders(const std::string& data);
|
||||||
@ -54,6 +59,8 @@ namespace ix
|
|||||||
: _url(url)
|
: _url(url)
|
||||||
, _disablePerMessageDeflate(disablePerMessageDeflate)
|
, _disablePerMessageDeflate(disablePerMessageDeflate)
|
||||||
, _binaryMode(binaryMode)
|
, _binaryMode(binaryMode)
|
||||||
|
, _receivedBytes(0)
|
||||||
|
, _sentBytes(0)
|
||||||
{
|
{
|
||||||
if (disableAutomaticReconnection)
|
if (disableAutomaticReconnection)
|
||||||
{
|
{
|
||||||
@ -68,6 +75,20 @@ namespace ix
|
|||||||
{
|
{
|
||||||
_webSocket.addSubProtocol(subprotocol);
|
_webSocket.addSubProtocol(subprotocol);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
WebSocket::setTrafficTrackerCallback(
|
||||||
|
[this](int size, bool incoming)
|
||||||
|
{
|
||||||
|
if (incoming)
|
||||||
|
{
|
||||||
|
_receivedBytes += size;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_sentBytes += size;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
void WebSocketConnect::log(const std::string& msg)
|
void WebSocketConnect::log(const std::string& msg)
|
||||||
@ -246,6 +267,9 @@ namespace ix
|
|||||||
spdlog::info("");
|
spdlog::info("");
|
||||||
webSocketChat.stop();
|
webSocketChat.stop();
|
||||||
|
|
||||||
|
spdlog::info("Received {} bytes", webSocketChat.getReceivedBytes());
|
||||||
|
spdlog::info("Sent {} bytes", webSocketChat.getSentBytes());
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
} // namespace ix
|
} // namespace ix
|
||||||
|
Loading…
x
Reference in New Issue
Block a user