提交 b1c50d93 编写于 作者: H heyanlong

generate sw3

上级 1424720a
.deps
.idea
cmake-build-debug
CMakeLists.txt
sky-php7ext/grpc/*
sky-php7ext/configure.ac
sky-php7ext/skywalking.loT
sky-php7ext\.idea
sky-php7ext\*.lo
sky-php7ext\*.la
......
[submodule "sky-php7ext/protos"]
path = sky-php7ext/protos
path = sky-php7ext/src/protos
url = https://github.com/apache/incubator-skywalking-data-collect-protocol.git
......@@ -21,6 +21,13 @@ dnl [ --enable-skywalking Enable skywalking support])
PHP_ARG_ENABLE(skywalking, whether to enable skywalking support,
[ --enable-skywalking Enable skywalking support])
if test -z "$PHP_DEBUG"; then
AC_ARG_ENABLE(debug,
[--enable-debug compile with debugging system],
[PHP_DEBUG=$enableval], [PHP_DEBUG=no]
)
fi
if test "$PHP_SKYWALKING" != "no"; then
dnl Write more examples of tests here...
......@@ -62,26 +69,28 @@ if test "$PHP_SKYWALKING" != "no"; then
dnl ])
dnl
dnl PHP_SUBST(SKYWALKING_SHARED_LIBADD)
CXXFLAGS+=" -std=c++11 "
PHP_REQUIRE_CXX()
KYWALKING_LIBS=" -L/usr/local/lib "
KYWALKING_LIBS+=`pkg-config --libs protobuf grpc++ grpc`
KYWALKING_LIBS+="-Wl,--no-as-needed -lgrpc++_reflection -Wl,--as-needed -ldl"
KYWALKING_LIBS+=" -Wl,--no-as-needed -lgrpc++_reflection -Wl,--as-needed -ldl "
AC_OUTPUT_COMMANDS(
protoc -I ./protos --cpp_out=./grpc ./protos/DiscoveryService.proto
protoc -I ./protos --cpp_out=./grpc ./protos/ApplicationRegisterService.proto
protoc -I ./protos --cpp_out=./grpc ./protos/TraceSegmentService.proto
)
AC_OUTPUT_COMMANDS(
protoc -I ./protos --grpc_out=./grpc --plugin=protoc-gen-grpc=`which grpc_cpp_plugin` ./protos/DiscoveryService.proto
protoc -I ./protos --grpc_out=./grpc --plugin=protoc-gen-grpc=`which grpc_cpp_plugin` ./protos/ApplicationRegisterService.proto
protoc -I ./protos --grpc_out=./grpc --plugin=protoc-gen-grpc=`which grpc_cpp_plugin` ./protos/TraceSegmentService.proto
protoc -I ./src/protos --cpp_out=./src/grpc ./src/protos/*.proto
protoc -I ./src/protos --grpc_out=./src/grpc --plugin=protoc-gen-grpc=`which grpc_cpp_plugin` ./src/protos/*.proto
)
AC_OUTPUT_COMMANDS(
mv grpc/DiscoveryService.grpc.pb.cc grpc/DiscoveryService-grpc.pb.cc
mv grpc/ApplicationRegisterService.grpc.pb.cc grpc/ApplicationRegisterService-grpc.pb.cc
mv grpc/TraceSegmentService.grpc.pb.cc grpc/TraceSegmentService-grpc.pb.cc
mv src/grpc/ApplicationRegisterService.grpc.pb.cc src/grpc/ApplicationRegisterService-grpc.pb.cc
mv src/grpc/Common.grpc.pb.cc src/grpc/Common-grpc.pb.cc
mv src/grpc/DiscoveryService.grpc.pb.cc src/grpc/DiscoveryService-grpc.pb.cc
mv src/grpc/Downstream.grpc.pb.cc src/grpc/Downstream-grpc.pb.cc
mv src/grpc/JVMMetricsService.grpc.pb.cc src/grpc/JVMMetricsService-grpc.pb.cc
mv src/grpc/KeyWithIntegerValue.grpc.pb.cc src/grpc/KeyWithIntegerValue-grpc.pb.cc
mv src/grpc/KeyWithStringValue.grpc.pb.cc src/grpc/KeyWithStringValue-grpc.pb.cc
mv src/grpc/NetworkAddressRegisterService.grpc.pb.cc src/grpc/NetworkAddressRegisterService-grpc.pb.cc
mv src/grpc/TraceSegmentService.grpc.pb.cc src/grpc/TraceSegmentService-grpc.pb.cc
)
PHP_EVAL_LIBLINE($KYWALKING_LIBS, SKYWALKING_SHARED_LIBADD)
......@@ -89,16 +98,9 @@ if test "$PHP_SKYWALKING" != "no"; then
PHP_NEW_EXTENSION(skywalking, \
skywalking.c \
grpc/greeter_client.cc \
grpc/DiscoveryService.pb.cc \
grpc/DiscoveryService-grpc.pb.cc \
grpc/ApplicationRegisterService.pb.cc \
grpc/ApplicationRegisterService-grpc.pb.cc \
grpc/TraceSegmentService.pb.cc \
grpc/TraceSegmentService-grpc.pb.cc \
, $ext_shared,, -std=c++11 -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
PHP_ADD_BUILD_DIR($ext_builddir/grpc)
, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
PHP_ADD_BUILD_DIR($ext_builddir/src/grpc)
PHP_ADD_LIBRARY(stdc++, 1, SKYWALKING_SHARED_LIBADD)
PHP_SUBST(SKYWALKING_SHARED_LIBADD)
fi
......@@ -52,7 +52,7 @@ extern zend_module_entry skywalking_module_entry;
#define DONOT_USE_PARENT_TRACE_ID 0
#define SHARED_MEMORY_KEY 428935192
#define SKYWALKING_SEGMENT "sg" //全部段节点
#define SKYWALKING_DISTRIBUTED_TRACEIDS "gt"//DistributedTraceIds
#define SKYWALKING_TRACE_SEGMENT_ID "ts"//本次请求id
......@@ -128,14 +128,17 @@ static char *build_SWheader_value(const char *peer_host);
static zval receive_SWHeader_from_caller();
static char *get_millisecond();
static char *uniqid();
static char *make_trace_id();
static char *generate_sw3(zend_long span_id, zend_string *peer_host, zend_string *operation_name);
static void make_trace_id();
static zend_always_inline zend_uchar is_sampling();
static char *generate_trace_id();
static char *get_ip();
static char *get_page_request_uri();
static char *get_page_url_and_peer();
static long generate_span_id();
static void *write_log( char *text);
static zval *set_span_nodes_data(zval *node_data);
static void request_init();
static long sky_array_unshift(zval *stack, zval *var);
static void set_sampling_rate(double degrees);
static void set_span_param_of_curl(char *peer_host);
......@@ -145,10 +148,12 @@ static int is_auto_open();
void accel_sky_curl_init(INTERNAL_FUNCTION_PARAMETERS);
void accel_sky_curl_setopt(INTERNAL_FUNCTION_PARAMETERS);
void accel_sky_curl_exec(INTERNAL_FUNCTION_PARAMETERS);
void sky_curl_exec_handler(INTERNAL_FUNCTION_PARAMETERS);
void list_poll(comList* myroot);
static void *sky_flush_all();
static zval *get_first_span();
static zval *get_spans();
static char* _get_current_machine_ip();
static int get_app_instance_id();
static int get_app_id();
......@@ -181,6 +186,8 @@ ZEND_BEGIN_MODULE_GLOBALS(skywalking)
zend_bool global_auto_open;
double global_sampling_rate;
char *global_app_grpc_trace;
zval UpstreamSegment;
zval context;
ZEND_END_MODULE_GLOBALS(skywalking)
extern ZEND_DECLARE_MODULE_GLOBALS(skywalking);
......@@ -189,7 +196,11 @@ extern ZEND_DECLARE_MODULE_GLOBALS(skywalking);
You are encouraged to rename these macros something shorter, see
examples in any other php module directory.
*/
#ifdef ZTS
#define SKYWALKING_G(v) TSRMG(skywalking_globals_id, zend_skywalking_globals *, v)
#else
#define SKYWALKING_G(v) ZEND_MODULE_GLOBALS_ACCESSOR(skywalking, v)
#endif
#if defined(ZTS) && defined(COMPILE_DL_SKYWALKING)
ZEND_TSRMLS_CACHE_EXTERN()
......
Subproject commit b66fa070fd647662f06497e4ed3657eb258cb6e9
此差异已折叠。
Subproject commit c02c12af12116121e25155d1f3fca0fadee5f2e9
//
// Created by Yanlong He on 2018/11/30.
//
#include "tools.h"
//
// Created by Yanlong He on 2018/11/30.
//
#ifndef SKYWALKING_TOOLS_H
#define SKYWALKING_TOOLS_H
#endif //SKYWALKING_TOOLS_H
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册