Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
SkyAPM
SkyAPM-php-sdk
提交
4f366522
S
SkyAPM-php-sdk
项目概览
SkyAPM
/
SkyAPM-php-sdk
通知
14
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
SkyAPM-php-sdk
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
4f366522
编写于
6月 28, 2019
作者:
H
heyanlong
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
6.x
上级
33b698b4
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
44 addition
and
23 deletion
+44
-23
skywalking.c
skywalking.c
+44
-23
未找到文件。
skywalking.c
浏览文件 @
4f366522
...
@@ -788,23 +788,50 @@ static void generate_context() {
...
@@ -788,23 +788,50 @@ static void generate_context() {
sw
=
zend_hash_str_find
(
Z_ARRVAL_P
(
carrier
),
"HTTP_SW6"
,
sizeof
(
"HTTP_SW6"
)
-
1
);
sw
=
zend_hash_str_find
(
Z_ARRVAL_P
(
carrier
),
"HTTP_SW6"
,
sizeof
(
"HTTP_SW6"
)
-
1
);
if
(
sw
!=
NULL
&&
Z_TYPE_P
(
sw
)
==
IS_STRING
&&
Z_STRLEN_P
(
sw
)
>
10
)
{
if
(
sw
!=
NULL
&&
Z_TYPE_P
(
sw
)
==
IS_STRING
&&
Z_STRLEN_P
(
sw
)
>
10
)
{
add_assoc_string
(
&
SKYWALKING_G
(
context
),
"sw6"
,
Z_STRVAL_P
(
sw
));
add_assoc_string
(
&
SKYWALKING_G
(
context
),
"sw6"
,
Z_STRVAL_P
(
sw
));
// todo
// contextCarrier = emalloc(sizeof(*contextCarrier));
zval
temp
;
//
array_init
(
&
temp
);
// zval temp;
// array_init(&temp);
php_explode
(
zend_string_init
(
ZEND_STRL
(
"-"
),
0
),
Z_STR_P
(
sw
),
&
temp
,
10
);
// php_explode(zend_string_init(ZEND_STRL("-"), 0), Z_STR_P(sw6), &temp, 10);
//
if
(
zend_array_count
(
Z_ARRVAL_P
(
&
temp
))
>=
7
)
{
// if (zend_array_count(Z_ARRVAL_P(&temp)) >= 7) {
zval
*
sw6_0
=
zend_hash_index_find
(
Z_ARRVAL
(
temp
),
0
);
// zval_b64_decode(&contextCarrier->primaryDistributedTraceId, Z_STRVAL_P(zend_hash_index_find(Z_ARRVAL(temp), 1)));
zval
*
sw6_1
=
zend_hash_index_find
(
Z_ARRVAL
(
temp
),
1
);
// Trace Id
// zval_b64_decode(&contextCarrier->traceSegmentId, Z_STRVAL_P(zend_hash_index_find(Z_ARRVAL(temp), 2)));
zval
*
sw6_2
=
zend_hash_index_find
(
Z_ARRVAL
(
temp
),
2
);
// Parent trace segment Id
// ZVAL_COPY(&contextCarrier->spanId, zend_hash_index_find(Z_ARRVAL(temp), 3));
zval
*
sw6_3
=
zend_hash_index_find
(
Z_ARRVAL
(
temp
),
3
);
// Parent span Id
// ZVAL_COPY(&contextCarrier->parentServiceInstanceId, zend_hash_index_find(Z_ARRVAL(temp), 4));
zval
*
sw6_4
=
zend_hash_index_find
(
Z_ARRVAL
(
temp
),
4
);
// Parent service instance Id
// ZVAL_COPY(&contextCarrier->entryServiceInstanceId, zend_hash_index_find(Z_ARRVAL(temp), 5));
zval
*
sw6_5
=
zend_hash_index_find
(
Z_ARRVAL
(
temp
),
5
);
// Entrance service instance Id
// zval_b64_decode(&contextCarrier->peerHost, Z_STRVAL_P(zend_hash_index_find(Z_ARRVAL(temp), 6)));
zval
*
sw6_6
=
zend_hash_index_find
(
Z_ARRVAL
(
temp
),
6
);
// Target address of this request
// zval_b64_decode(&contextCarrier->entryEndpointName, Z_STRVAL_P(zend_hash_index_find(Z_ARRVAL(temp), 7)));
// zval_b64_decode(&contextCarrier->parentEndpointName, Z_STRVAL_P(zend_hash_index_find(Z_ARRVAL(temp), 8)));
zval
*
sw6_7
=
NULL
;
// }
zval
*
sw6_8
=
NULL
;
if
(
zend_array_count
(
Z_ARRVAL_P
(
&
temp
))
>=
9
)
{
sw6_7
=
zend_hash_index_find
(
Z_ARRVAL
(
temp
),
7
);
sw6_8
=
zend_hash_index_find
(
Z_ARRVAL
(
temp
),
8
);
}
zval
child
;
array_init
(
&
child
);
ZVAL_LONG
(
&
child
,
1
);
zend_hash_str_update
(
Z_ARRVAL_P
(
&
SKYWALKING_G
(
context
)),
"isChild"
,
sizeof
(
"isChild"
)
-
1
,
&
child
);
add_assoc_string
(
&
SKYWALKING_G
(
context
),
"parentTraceSegmentId"
,
Z_STRVAL_P
(
sw6_2
));
add_assoc_long
(
&
SKYWALKING_G
(
context
),
"parentSpanId"
,
zend_atol
(
Z_STRVAL_P
(
sw6_3
),
sizeof
(
Z_STRVAL_P
(
sw6_3
))
-
1
));
add_assoc_long
(
&
SKYWALKING_G
(
context
),
"parentApplicationInstance"
,
zend_atol
(
Z_STRVAL_P
(
sw6_4
),
sizeof
(
Z_STRVAL_P
(
sw6_4
))
-
1
));
add_assoc_long
(
&
SKYWALKING_G
(
context
),
"entryApplicationInstance"
,
zend_atol
(
Z_STRVAL_P
(
sw6_5
),
sizeof
(
Z_STRVAL_P
(
sw6_5
))
-
1
));
add_assoc_str
(
&
SKYWALKING_G
(
context
),
"networkAddress"
,
trim_sharp
(
sw6_6
));
if
(
sw6_7
!=
NULL
&&
sw6_8
!=
NULL
)
{
add_assoc_str
(
&
SKYWALKING_G
(
context
),
"entryOperationName"
,
trim_sharp
(
sw6_7
));
add_assoc_str
(
&
SKYWALKING_G
(
context
),
"parentOperationName"
,
trim_sharp
(
sw6_8
));
}
add_assoc_string
(
&
SKYWALKING_G
(
context
),
"distributedTraceId"
,
Z_STRVAL_P
(
sw6_1
));
}
else
{
add_assoc_long
(
&
SKYWALKING_G
(
context
),
"parentApplicationInstance"
,
application_instance
);
add_assoc_long
(
&
SKYWALKING_G
(
context
),
"entryApplicationInstance"
,
application_instance
);
add_assoc_string
(
&
SKYWALKING_G
(
context
),
"entryOperationName"
,
get_page_request_uri
());
add_assoc_string
(
&
SKYWALKING_G
(
context
),
"distributedTraceId"
,
makeTraceId
);
}
}
}
}
}
...
@@ -984,12 +1011,6 @@ static void request_init() {
...
@@ -984,12 +1011,6 @@ static void request_init() {
efree
(
peer
);
efree
(
peer
);
}
}
// zval *method = NULL;
// method = zend_hash_str_find(Z_ARRVAL(SKYWALKING_G(context)), "method", sizeof("method") - 1);
// if (method != NULL) {
// add_assoc_string(&temp, "method", Z_STRVAL_P(method));
// }
zval
*
isChild
=
zend_hash_str_find
(
Z_ARRVAL_P
(
&
SKYWALKING_G
(
context
)),
"isChild"
,
sizeof
(
"isChild"
)
-
1
);
zval
*
isChild
=
zend_hash_str_find
(
Z_ARRVAL_P
(
&
SKYWALKING_G
(
context
)),
"isChild"
,
sizeof
(
"isChild"
)
-
1
);
// refs
// refs
zval
refs
;
zval
refs
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录