You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@inlong.apache.org by do...@apache.org on 2022/08/23 08:25:39 UTC
[inlong] branch release-1.3.0 updated: [INLONG-5437][SDK] Support initializing SDK(cpp) by ClientConfig object (#5641)
This is an automated email from the ASF dual-hosted git repository.
dockerzhang pushed a commit to branch release-1.3.0
in repository https://gitbox.apache.org/repos/asf/inlong.git
The following commit(s) were added to refs/heads/release-1.3.0 by this push:
new 05a94af45 [INLONG-5437][SDK] Support initializing SDK(cpp) by ClientConfig object (#5641)
05a94af45 is described below
commit 05a94af450e1b25f5a5a376f1aa0c2aa5123b4dc
Author: xueyingzhang <86...@users.noreply.github.com>
AuthorDate: Tue Aug 23 16:22:35 2022 +0800
[INLONG-5437][SDK] Support initializing SDK(cpp) by ClientConfig object (#5641)
---
.../dataproxy-sdk-cpp/README.md | 6 +-
.../{src/base => release/inc}/client_config.h | 3 +
.../dataproxy-sdk-cpp/release/inc/tc_api.h | 11 +-
.../dataproxy-sdk-cpp/src/base/client_config.cc | 52 +++++++++-
.../dataproxy-sdk-cpp/src/base/logger.h | 12 +--
.../dataproxy-sdk-cpp/src/base/pack_queue.h | 1 -
.../dataproxy-sdk-cpp/src/base/proxylist_config.cc | 1 -
.../dataproxy-sdk-cpp/src/base/proxylist_config.h | 1 -
.../dataproxy-sdk-cpp/src/base/sdk_constant.h | 2 +-
.../dataproxy-sdk-cpp/src/base/sdk_core.cc | 112 ++++++++++++++-------
.../dataproxy-sdk-cpp/src/base/sdk_core.h | 2 +-
.../dataproxy-sdk-cpp/src/net/buffer_pool.cc | 2 +-
.../dataproxy-sdk-cpp/src/net/buffer_pool.h | 1 -
.../src/net/executor_thread_pool.cc | 2 -
.../src/net/executor_thread_pool.h | 1 -
.../dataproxy-sdk-cpp/src/net/send_buffer.h | 2 -
.../dataproxy-sdk-cpp/src/net/socket_connection.cc | 1 -
.../dataproxy-sdk-cpp/src/net/socket_connection.h | 1 -
.../dataproxy-sdk-cpp/test/CMakeLists.txt | 1 +
.../test/base/client_config_test.cc | 21 ++++
.../test/base/proxylist_config_test.cc | 2 +-
.../dataproxy-sdk-cpp/test/net/big_pack_test.cc | 4 -
.../dataproxy-sdk-cpp/test/net/buffer_pool_test.cc | 16 ++-
.../dataproxy-sdk-cpp/test/net/send_buffer_test.cc | 2 +-
.../test/net/socket_connection_test.cc | 3 +-
25 files changed, 183 insertions(+), 79 deletions(-)
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/README.md b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/README.md
index f6c3b09df..526eabd91 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/README.md
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/README.md
@@ -66,14 +66,16 @@ Refer to `release/conf/config_example.json`.
|log_file_type|2|type of log output: 2->file, 1->console|
|log_path|./logs/|log path|
|proxy_update_interval|10|interval of requesting and updating dataproxy lists from manager|
-|proxy_cfg_preurl|"http://127.0.0.1:8099/api/inlong/manager/openapi/dataproxy/getIpList"|the url of manager openapi|
+|proxy_cfg_preurl|"http://127.0.0.1:8099/inlong/manager/openapi/dataproxy/getIpList"|the url of manager openapi|
|need_auth|false|whether need authentication while interacting with manager|
|auth_id|""|authenticate id if need authentication|
|auth_key|""|authenticate key if need authentication|
## Usage
-1. First, init dataproxy-sdk: `int32_t tc_api_init(const char* config_file)`. Here, `config_file` is the path of your config file, and absolute path is recommended. Note that only once called is needed in one process.
+1. First, init dataproxy-sdk, there are two ways you can choose:
+- A) `int32_t tc_api_init(const char* config_file)`. Here, `config_file` is the path of your config file, and absolute path is recommended. Note that only once called is needed in one process.
+- B) `int32_t tc_api_init(ClientConfig* client_config)`. Here, `client_config` is the pointer of a `ClientConfig` object.
2. Then, send data: `int32_t tc_api_send(const char* inlong_group_id, const char* inlong_stream_id, const char* msg, int32_t msg_len, UserCallBack call_back = NULL)`. If you set `call_back`, it will be callbacked if your data failed to send. See the signature of `UserCallBack` in `release/inc/user_msg.h`.
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/client_config.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/release/inc/client_config.h
similarity index 95%
rename from inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/client_config.h
rename to inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/release/inc/client_config.h
index 94bc9c009..ed8eaad5d 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/client_config.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/release/inc/client_config.h
@@ -94,9 +94,12 @@ namespace dataproxy_sdk
std::string auth_key_;
ClientConfig(const std::string config_path) : config_path_(config_path) {}
+ ClientConfig(const std::string& proxy_url, bool need_auth, const std::string& auth_id, const std::string& auth_key);
+
bool parseConfig(); // return false if parse failed
void defaultInit();
void showClientConfig();
+ void updateBufSize();
inline bool enableCharGroupid() const { return (((extend_field_)&0x4) >> 2); } // use char type groupId、streadmId
inline bool enableTraceIP() const { return (((extend_field_)&0x2) >> 1); }
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/release/inc/tc_api.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/release/inc/tc_api.h
index 156b06e83..5518d9b4b 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/release/inc/tc_api.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/release/inc/tc_api.h
@@ -20,6 +20,7 @@
#include <stdint.h>
#include "user_msg.h"
+#include "client_config.h"
namespace dataproxy_sdk
{
@@ -39,7 +40,8 @@ enum SDKInvalidResult {
kFailWriteToBuf = 15,
kErrorCURL = 16, // request manager error
kErrorParseJson = 17,
- kFailGetPackQueue = 18 // failed to get pack queue
+ kFailGetPackQueue = 18, // failed to get pack queue
+ kErrorAuthInfo = 19 // wrong authen
};
@@ -58,6 +60,13 @@ int32_t tc_api_init(const char* config_file);
*/
int32_t tc_api_init_ext(const char* config_file, int32_t use_def);
+/**
+ * @description: Using ClientConfig to init api
+ * @return 0 if success
+ * @param {ClientConfig&} refer to client_config.h
+ */
+int32_t tc_api_init(ClientConfig* client_config);
+
/**
* @description: send data
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/client_config.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/client_config.cc
index bd9ba31a2..0aad0f6d8 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/client_config.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/client_config.cc
@@ -27,6 +27,44 @@
namespace dataproxy_sdk
{
+ ClientConfig::ClientConfig(const std::string& proxy_url, bool need_auth, const std::string& auth_id, const std::string& auth_key):
+ proxy_URL_(proxy_url),
+ need_auth_(need_auth),
+ auth_id_(auth_id),
+ auth_key_(auth_key),
+ thread_nums_(constants::kThreadNums),
+ shared_buf_nums_(constants::kSharedBufferNums),
+ enable_groupId_isolation_(constants::kEnableGroupidIsolation),
+ buffer_num_per_groupId_(constants::kBufferNumPerGroupid),
+ net_tag_(constants::kNetTag),
+ enable_pack_(constants::kEnablePack),
+ pack_size_(constants::kPackSize),
+ pack_timeout_(constants::kPackTimeout),
+ ext_pack_size_(constants::kExtPackSize),
+ enable_zip_(constants::kEnableZip),
+ min_zip_len_(constants::kMinZipLen),
+ enable_retry_(constants::kEnableRetry),
+ retry_interval_(constants::kRetryInterval),
+ retry_num_(constants::kRetryNum),
+ log_num_(constants::kLogNum),
+ log_size_(constants::kLogSize),
+ log_level_(constants::kLogLevel),
+ log_file_type_(constants::kLogFileType),
+ log_path_(constants::kLogPath),
+ log_enable_limit_(constants::kLogEnableLimit),
+ enable_proxy_URL_from_cluster_(constants::kEnableProxyURLFromCluster),
+ proxy_cluster_URL_(constants::kProxyClusterURL),
+ proxy_update_interval_(constants::kProxyUpdateInterval),
+ proxy_URL_timeout_(constants::kProxyURLTimeout),
+ max_active_proxy_num_(constants::kMaxActiveProxyNum),
+ ser_ip_(constants::kSerIP),
+ max_buf_pool_(constants::kMaxBufPool),
+ msg_type_(constants::kMsgType),
+ enable_TCP_nagle_(constants::kEnableTCPNagle),
+ mask_cpu_affinity_(constants::kMaskCPUAffinity),
+ is_from_DC_(constants::kIsFromDC),
+ extend_field_(constants::kExtendField) {}
+
bool ClientConfig::parseConfig()
{
std::string file_content;
@@ -382,7 +420,7 @@ namespace dataproxy_sdk
}
else
{
- proxy_cluster_URL_ = constants::kBusClusterURL;
+ proxy_cluster_URL_ = constants::kProxyClusterURL;
LOG_WARN("proxy_cluster_URL(proxy_cfg_url) in user config is not expect, then use default: %s", proxy_cluster_URL_.c_str());
}
// enable_proxy_URL_from_cluster
@@ -592,13 +630,19 @@ namespace dataproxy_sdk
}
// set bufNum
- buf_size_ = ext_pack_size_ + 400;
- buf_num_ = max_buf_pool_ / (buf_size_);
+ updateBufSize();
+
LOG_WARN("sendBuf num of a pool is %d", buf_num_);
return true;
}
+ void ClientConfig::updateBufSize()
+ {
+ buf_size_ = ext_pack_size_ + 400;
+ buf_num_ = max_buf_pool_ / (buf_size_);
+ }
+
void ClientConfig::defaultInit(){
user_config_err_=true;
@@ -630,7 +674,7 @@ namespace dataproxy_sdk
proxy_URL_=constants::kProxyURL;
enable_proxy_URL_from_cluster_=constants::kEnableProxyURLFromCluster;
- proxy_cluster_URL_=constants::kBusClusterURL;
+ proxy_cluster_URL_=constants::kProxyClusterURL;
proxy_update_interval_=constants::kProxyUpdateInterval;
proxy_URL_timeout_=constants::kProxyURLTimeout;
max_active_proxy_num_=constants::kMaxActiveProxyNum;
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/logger.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/logger.h
index e7582f25f..b2bd25783 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/logger.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/logger.h
@@ -49,13 +49,13 @@ Logger& getLogger();
} \
}
-#define LOG_TRACE(fmt, ...) LOG_TDBUSCAPI(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogTrace, fmt, ##__VA_ARGS__)
-#define LOG_DEBUG(fmt, ...) LOG_TDBUSCAPI(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogDebug, fmt, ##__VA_ARGS__)
-#define LOG_INFO(fmt, ...) LOG_TDBUSCAPI(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogInfo, fmt, ##__VA_ARGS__)
-#define LOG_WARN(fmt, ...) LOG_TDBUSCAPI(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogWarn, fmt, ##__VA_ARGS__)
-#define LOG_ERROR(fmt, ...) LOG_TDBUSCAPI(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogError, fmt, ##__VA_ARGS__)
+#define LOG_TRACE(fmt, ...) LOG_SDKCPP(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogTrace, fmt, ##__VA_ARGS__)
+#define LOG_DEBUG(fmt, ...) LOG_SDKCPP(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogDebug, fmt, ##__VA_ARGS__)
+#define LOG_INFO(fmt, ...) LOG_SDKCPP(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogInfo, fmt, ##__VA_ARGS__)
+#define LOG_WARN(fmt, ...) LOG_SDKCPP(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogWarn, fmt, ##__VA_ARGS__)
+#define LOG_ERROR(fmt, ...) LOG_SDKCPP(dataproxy_sdk::getLogger(), dataproxy_sdk::Logger::kLogError, fmt, ##__VA_ARGS__)
-#define LOG_TDBUSCAPI(logger, level, fmt, ...) \
+#define LOG_SDKCPP(logger, level, fmt, ...) \
{ \
if (logger.enableLevel(level)) \
{ \
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/pack_queue.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/pack_queue.h
index f6f0690b5..4debb899d 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/pack_queue.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/pack_queue.h
@@ -29,7 +29,6 @@
#include "atomic.h"
#include "buffer_pool.h"
#include "sdk_core.h"
-#include "client_config.h"
#include "noncopyable.h"
#include "user_msg.h"
namespace dataproxy_sdk
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/proxylist_config.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/proxylist_config.cc
index d915df572..065dd0e3b 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/proxylist_config.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/proxylist_config.cc
@@ -29,7 +29,6 @@
#include <stdlib.h>
#include "sdk_constant.h"
-#include "sdk_core.h"
#include "executor_thread_pool.h"
#include "ini_help.h"
#include "logger.h"
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/proxylist_config.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/proxylist_config.h
index 9be77a917..ed6dd7b5f 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/proxylist_config.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/proxylist_config.h
@@ -31,7 +31,6 @@
#include <unordered_map>
#include "sdk_core.h"
-#include "client_config.h"
#include "noncopyable.h"
#include "read_write_mutex.h"
namespace dataproxy_sdk
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_constant.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_constant.h
index ff39fe3d1..9b48ded52 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_constant.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_constant.h
@@ -68,7 +68,7 @@ namespace dataproxy_sdk
static const std::string kProxyURL = "http://127.0.0.1:8099/api/dataproxy_ip_v2";
static const bool kEnableProxyURLFromCluster = false;
- static const std::string kBusClusterURL =
+ static const std::string kProxyClusterURL =
"http://127.0.0.1:8099/heartbeat/dataproxy_ip_v2?cluster_id=0&net_tag=normal";
static const uint32_t kProxyUpdateInterval = 10;
static const uint32_t kProxyURLTimeout = 2;
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_core.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_core.cc
index 9afeaece4..3e3a03188 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_core.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_core.cc
@@ -51,45 +51,13 @@ namespace dataproxy_sdk
ExecutorThreadPool *g_executors = nullptr;
int32_t g_use_default = 0; // whether use default config to init sdk if user's config file error
- int32_t tc_api_init(const char *config_file)
+ int32_t init_helper ()
{
- getLogger().init(5, 15, Logger::Level(3), 2, true, "./", ".cpplog");
-
- // one process is only initialized once
- if (!init_flag.compareAndSwap(0, 1))
- {
- LOG_ERROR("dataproxy_sdk_cpp has been initialized before!");
- return SDKInvalidResult::kMultiInit;
- }
- user_exit_flag.getAndSet(0);
-
- g_config = new ClientConfig(config_file);
-
- if (!g_config){
- LOG_ERROR("dataproxy_sdk_cpp init error");
- return SDKInvalidResult::kErrorInit;
- }
- bool res = g_config->parseConfig();
-
- if (!res){
- // init error and not allow default init
- if (g_use_default)
- {
- g_config->defaultInit();
- }
- else
- {
- LOG_ERROR("dataproxy_sdk_cpp init error");
- return SDKInvalidResult::kErrorInit;
- }
- }
-
- remove("./.cpplog");
-
getLogger().init(g_config->log_size_, g_config->log_num_, Logger::Level(g_config->log_level_), g_config->log_file_type_,
g_config->log_enable_limit_, g_config->log_path_);
- LOG_WARN("dataproxy_sdk_cpp start init, config path:%s, version:%s", config_file, constants::kTDBusCAPIVersion);
+ LOG_WARN("dataproxy_sdk_cpp start init, version:%s", constants::kTDBusCAPIVersion);
+
g_config->showClientConfig();
// get local ip
@@ -155,6 +123,79 @@ namespace dataproxy_sdk
LOG_WARN("dataproxy_sdk_cpp init complete!");
return 0;
+
+ }
+
+ int32_t tc_api_init(const char *config_file)
+ {
+ getLogger().init(5, 15, Logger::Level(3), 2, true, "./", ".cpplog");
+
+ // one process is only initialized once
+ if (!init_flag.compareAndSwap(0, 1))
+ {
+ LOG_ERROR("dataproxy_sdk_cpp has been initialized before!");
+ return SDKInvalidResult::kMultiInit;
+ }
+ user_exit_flag.getAndSet(0);
+
+ g_config = new ClientConfig(config_file);
+ if (!g_config){
+ LOG_ERROR("dataproxy_sdk_cpp init error");
+ return SDKInvalidResult::kErrorInit;
+ }
+ bool res = g_config->parseConfig();
+
+ if (!res){
+ // init error and not allow default init
+ if (g_use_default)
+ {
+ g_config->defaultInit();
+ }
+ else
+ {
+ LOG_ERROR("dataproxy_sdk_cpp init error");
+ return SDKInvalidResult::kErrorInit;
+ }
+ }
+
+ remove("./.cpplog");
+
+ return init_helper();
+
+
+ }
+
+
+ int32_t tc_api_init(ClientConfig* client_config)
+ {
+ if (!init_flag.compareAndSwap(0, 1))
+ {
+ return SDKInvalidResult::kMultiInit;
+ }
+
+ if (!client_config)
+ {
+ return SDKInvalidResult::kErrorInit;
+
+ }
+
+ // check and proxy url
+ if (client_config->proxy_URL_.empty())
+ {
+ return SDKInvalidResult::kErrorInit;
+
+ }
+ // check auth setting
+ if (client_config->need_auth_ && (client_config->auth_id_.empty() || client_config->auth_key_.empty()))
+ {
+ return SDKInvalidResult::kErrorAuthInfo;
+ }
+
+ g_config = client_config;
+ g_config->updateBufSize();
+
+ return init_helper();
+
}
int32_t tc_api_init_ext(const char *config_file, int32_t use_def)
@@ -295,4 +336,5 @@ namespace dataproxy_sdk
return 0;
}
+
} // namespace dataproxy_sdk
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_core.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_core.h
index df8c21b8e..14dafb3a5 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_core.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/base/sdk_core.h
@@ -27,10 +27,10 @@
#include "atomic.h"
#include "user_msg.h"
+#include "client_config.h"
// #include "buffer_pool.h"
namespace dataproxy_sdk {
-class ClientConfig;
class GlobalCluster;
class GlobalQueues;
class TotalPools;
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/buffer_pool.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/buffer_pool.cc
index 48da3cee1..aaa6ce85b 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/buffer_pool.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/buffer_pool.cc
@@ -278,7 +278,7 @@ namespace dataproxy_sdk
BufferPoolPtr TotalPools::getPool(const std::string &inlong_group_id)
{
- if (g_config->enable_groupId_isolation_) // groupid隔离
+ if (g_config->enable_groupId_isolation_) // groupid isolate
{
auto groupid_pool = groupid2pool_map_.find(inlong_group_id);
if (groupid_pool == groupid2pool_map_.end() || groupid_pool->second.empty())
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/buffer_pool.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/buffer_pool.h
index 26ae2942b..dc48cdcaf 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/buffer_pool.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/buffer_pool.h
@@ -27,7 +27,6 @@
#include <unordered_map>
#include <vector>
-#include "atomic.h"
#include "sdk_core.h"
#include "noncopyable.h"
#include "pack_queue.h"
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/executor_thread_pool.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/executor_thread_pool.cc
index c7c0010fb..8d5653ba9 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/executor_thread_pool.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/executor_thread_pool.cc
@@ -19,8 +19,6 @@
#include "executor_thread_pool.h"
-#include "sdk_core.h"
-
namespace dataproxy_sdk
{
ExecutorThread::ExecutorThread(int32_t id)
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/executor_thread_pool.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/executor_thread_pool.h
index e8f7013b9..bfc5d74f7 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/executor_thread_pool.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/executor_thread_pool.h
@@ -27,7 +27,6 @@
#include <thread>
#include "sdk_core.h"
-#include "client_config.h"
#include "logger.h"
#include "noncopyable.h"
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/send_buffer.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/send_buffer.h
index 16977944c..2699eb462 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/send_buffer.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/send_buffer.h
@@ -23,12 +23,10 @@
#include <mutex>
#include <string>
-#include "atomic.h"
#include "sdk_core.h"
// #include "executor_thread_pool.h"
#include "logger.h"
#include "noncopyable.h"
-#include "user_msg.h"
// #include "socket_connection.h"
namespace dataproxy_sdk
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/socket_connection.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/socket_connection.cc
index f350d2f68..88e6c6ca9 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/socket_connection.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/socket_connection.cc
@@ -26,7 +26,6 @@
#include "buffer_pool.h"
#include "proxylist_config.h"
#include "sdk_constant.h"
-#include "client_config.h"
#include "send_buffer.h"
#include "utils.h"
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/socket_connection.h b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/socket_connection.h
index 7eaf8a602..6b541b678 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/socket_connection.h
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/src/net/socket_connection.h
@@ -28,7 +28,6 @@
#include <system_error>
#include <unordered_map>
-#include "atomic.h"
#include "sdk_core.h"
#include "executor_thread_pool.h"
#include "logger.h"
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/CMakeLists.txt b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/CMakeLists.txt
index d32bd60a2..f543df660 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/CMakeLists.txt
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/CMakeLists.txt
@@ -21,6 +21,7 @@ function(sdk_add_tests _name)
set(_srcs ${ARGN})
message(STATUS "${_name} sources: ${_srcs}")
add_executable(${_name} ${_srcs})
+ include_directories(release/inc)
target_link_libraries(${_name} sdk_base sdk_net pthread gtest gmock)
endfunction(sdk_add_tests _name)
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/base/client_config_test.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/base/client_config_test.cc
index 65a4568a4..695f0685e 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/base/client_config_test.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/base/client_config_test.cc
@@ -46,6 +46,27 @@ TEST(client, test2)
EXPECT_EQ(client.parseConfig(), true);
}
+TEST(client, init)
+{
+ ClientConfig client = ClientConfig("proxy_url", false, "", "key");
+ EXPECT_EQ(client.proxy_URL_, "proxy_url");
+ EXPECT_EQ(client.need_auth_, false);
+ EXPECT_EQ(client.auth_id_, "");
+ EXPECT_EQ(client.auth_key_, "key");
+ EXPECT_EQ(client.enable_pack_, constants::kEnablePack);
+}
+
+TEST(sdk, init)
+{
+ ClientConfig client = ClientConfig("proxy_url", false, "", "key");
+ int32_t init_first = tc_api_init("./release/conf/config_example.json");
+ int32_t init_second = tc_api_init(&client);
+ EXPECT_EQ(init_first, 0);
+ EXPECT_EQ(init_second, SDKInvalidResult::kMultiInit);
+ EXPECT_EQ(tc_api_close(1000), 0);
+
+}
+
int main(int argc, char* argv[])
{
getLogger().init(5, 15, Logger::Level(4), 2, true, "./newlogs/");
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/base/proxylist_config_test.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/base/proxylist_config_test.cc
index ba846a887..a176bef1b 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/base/proxylist_config_test.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/base/proxylist_config_test.cc
@@ -21,7 +21,7 @@
TEST(businfo, basetest)
{
- ProxyInfoPtr proxy = make_shared<ProxyInfo>("1", "0.0.0.0", 11009);
+ ProxyInfoPtr proxy = make_shared<ProxyInfo>(1, "0.0.0.0", 11009);
EXPECT_EQ(proxy->getString(), "[ip:0.0.0.0, port:11009]");
}
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/big_pack_test.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/big_pack_test.cc
index 3c936c7fa..6d76036a9 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/big_pack_test.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/big_pack_test.cc
@@ -21,10 +21,6 @@
#include <string>
#include <system_error>
-#include "sdk_core.h"
-#include "executor_thread_pool.h"
-#include "logger.h"
-#include "recv_buffer.h"
#include "socket_connection.h"
using namespace std;
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/buffer_pool_test.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/buffer_pool_test.cc
index f7e186e19..cf96c66c5 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/buffer_pool_test.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/buffer_pool_test.cc
@@ -19,7 +19,7 @@
#include "atomic.h"
#include "buffer_pool.h"
-#include "buslist_config.h"
+#include "proxylist_config.h"
#include "executor_thread_pool.h"
#include "logger.h"
#include "send_buffer.h"
@@ -44,17 +44,15 @@ TEST(bufpool, basetest)
EXPECT_EQ(g_config->parseConfig(), true);
cout << g_config->bufNum() << endl;
- g_pools = new TotalPools(g_config->thread_nums_, g_config->bufNum(), g_config->buf_size_);
- EXPECT_NE(g_pools->getPool(0), nullptr);
- EXPECT_NE(g_pools->getPool(1), nullptr);
- EXPECT_NE(g_pools->getPool(2), nullptr);
- EXPECT_EQ(g_pools->getPool(3), nullptr);
+ g_pools = new TotalPools();
+ EXPECT_NE(g_pools->getPool("groupid_1"), nullptr);
+ EXPECT_NE(g_pools->getPool("groupid_2"), nullptr);
SendBuffer* buf = nullptr;
- EXPECT_EQ(g_pools->getPool(0)->writeId(), 0);
- EXPECT_EQ(g_pools->getPool(0)->getSendBuf(buf), 0);
+ EXPECT_EQ(g_pools->getPool("groupid_1")->writeId(), 0);
+ EXPECT_EQ(g_pools->getPool("groupid_2")->getSendBuf(buf), 0);
EXPECT_NE(buf, nullptr);
- EXPECT_EQ(g_pools->getPool(0)->writeId(), 1);
+ EXPECT_EQ(g_pools->getPool("groupid_1")->writeId(), 1);
}
int main(int argc, char* argv[])
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/send_buffer_test.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/send_buffer_test.cc
index a54c646e4..3ea1f33b3 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/send_buffer_test.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/send_buffer_test.cc
@@ -45,7 +45,7 @@ int32_t callBackFunc(const char* inlong_group_id, const char* inlong_stream_id,
TEST(sendBuffer, callbacktest)
{
SendBuffer* buf = new SendBuffer(102400);
- buf->setBid("bid1");
+ buf->setGroupid("inlong_group_id_1");
buf->setStreamid("inlong_stream_id");
UserMsgPtr req = make_shared<UserMsg>("lksdewoigiore", "127.0.0.1", 0, callBackFunc, "no_attr", "127.0.0.1", 0);
diff --git a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/socket_connection_test.cc b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/socket_connection_test.cc
index 707f27378..e1778ee1a 100644
--- a/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/socket_connection_test.cc
+++ b/inlong-sdk/dataproxy-sdk-twins/dataproxy-sdk-cpp/test/net/socket_connection_test.cc
@@ -20,7 +20,7 @@
#include "../common.h"
ExecutorThreadPtr th1 = make_shared<ExecutorThread>(1);
-ProxyInfoPtr proxy = make_shared<ProxyInfo>("1", "127.0.0.1", 4000);
+ProxyInfoPtr proxy = make_shared<ProxyInfo>(1, "127.0.0.1", 4000);
ConnectionPtr conn1 = make_shared<Connection>(th1, proxy);
TEST(connection, sendBufTest1)
@@ -34,7 +34,6 @@ TEST(connection, sendBufTest1)
conn1->decreaseWaiting();
EXPECT_EQ(conn1->getWaitingSend(), 0);
EXPECT_EQ(conn1->getRemoteInfo(), "[ip:127.0.0.1, port:4000]");
- EXPECT_EQ(conn1->getProxyInfo(), proxy);
this_thread::sleep_for(chrono::seconds(3));
EXPECT_EQ(conn1->isConnected(), true);