diff --git a/inc/tsg_send_log.h b/inc/tsg_send_log.h index 9b2bc09..4542a1b 100644 --- a/inc/tsg_send_log.h +++ b/inc/tsg_send_log.h @@ -7,13 +7,6 @@ #define PRINTADDR(a, b) ((b)addr), a->threadnum) : "") #endif -#include "rapidjson/document.h" // rapidjson's DOM-style API -#include "rapidjson/prettywriter.h" // for stringify JSON -#include "rapidjson/stringbuffer.h" - -using namespace rapidjson; -using namespace std; - typedef struct _tsg_log { int result_num; @@ -33,35 +26,13 @@ typedef enum _tld_type TLD_TYPE_MAX }TLD_TYPE; -struct TLD_handle_t -{ - int thread_id; - Document *document; -}; - +struct TLD_handle_t; struct tsg_log_instance_t; extern struct tsg_log_instance_t *g_tsg_log_instance; struct TLD_handle_t *TLD_create(int thread_id); -/* You can add the same key multiple times without being overwritten - * - * Value array(kArrayType); - * array.PushBack(elem1, handle->document->GetAllocator()); - * array.PushBack(elem2, handle->document->GetAllocator()); - * array.PushBack(elem3, handle->document->GetAllocator()); - * TLD_append(handle, key_string, &val_array, TLD_TYPE_OBJECT); - * - * Value object(kObjectType); - * object.AddMember("key1", val1, handle->document->GetAllocator()); - * object.AddMember("key2", val2, handle->document->GetAllocator()); - * object.AddMember("key3", val2, handle->document->GetAllocator()); - * TLD_append(handle, key_string, &object, TLD_TYPE_OBJECT); - * - * TLD_append(handle, key_string, (void *)val_long, TLD_TYPE_LONG); - * TLD_append(handle, key_string, (void *)val_string, TLD_TYPE_STRING); - */ int TLD_append(struct TLD_handle_t *handle, char *key, void *value, TLD_TYPE type); int TLD_append_streaminfo(struct tsg_log_instance_t *instance, struct TLD_handle_t *handle, struct streaminfo *a_stream); int TLD_cancel(struct TLD_handle_t *handle); diff --git a/src/tsg_send_log.cpp b/src/tsg_send_log.cpp index d2bff87..d9a4a35 100644 --- a/src/tsg_send_log.cpp +++ b/src/tsg_send_log.cpp @@ -22,9 +22,24 @@ #include "tsg_send_log.h" #include "tsg_send_log_internal.h" +#include "rapidjson/document.h" // rapidjson's DOM-style API +#include "rapidjson/prettywriter.h" // for stringify JSON +#include "rapidjson/stringbuffer.h" + + +using namespace rapidjson; +using namespace std; + + char TSG_SEND_LOG_VERSION_20200729=0; struct tsg_log_instance_t *g_tsg_log_instance; +struct TLD_handle_t +{ + int thread_id; + Document *document; +}; + const id2field_t tld_type[TLD_TYPE_MAX]={{TLD_TYPE_UNKNOWN, TLD_TYPE_UNKNOWN, "UNKOWN"}, {TLD_TYPE_LONG, TLD_TYPE_LONG, "LONG"}, {TLD_TYPE_STRING, TLD_TYPE_STRING, "STRING"},