chuan-yun / Molten

php probe for zipkin and opentracing
Apache License 2.0
793 stars 160 forks source link

可否列出需要的依赖? #131

Closed zshbsm closed 5 years ago

zshbsm commented 5 years ago

能不能一个需要的依赖列表?本机运行可以,在docker里面运行不成功. 我猜因为我们的镜像比较简单缺少很多扩展依赖(比如没有mysqli)可否给个依赖列表?还是不需要依赖? 十分感谢

zshbsm commented 5 years ago

我是以zipkin 格式 直接提交到 阿里云 链路追踪服务,本地很完美。 docker里面安装也没问题,运行也不报错,但是就是在阿里云收不到数据。查看 make test 里面 提示缺少很多 扩展 第一个就是mysqli ,我现在一个一个装扩展,是依赖的问题吗?

silkcutKs commented 5 years ago

@zshbsm 必须的只有三个:json/standard/curl; 如果本地编译的时候有PDO的话, 还会将PDO设置为必选, 如何编译的时候环境中没有PDO话, PDO是可选的

zshbsm commented 5 years ago

@silkcutKs 感谢,我发现确实不是mysqli的问题。现在本地的话 molten.sink_type=1、2、4都可以。 docker里面发现了molten.sink_type=2 可以看到输出,molten应该已经正常运行了,可是 molten.sink_type=4 没有效果,该如何排查呢?

zshbsm commented 5 years ago

@silkcutKs 我做了充分的试验,本地如果molten.sink_http_uri错误的话会有HTTP Status 400 – Bad Request报错。 `

extension=molten.so molten.sink_type=4 molten.span_format=zipkin_v2 molten.sink_http_uri=http://www.baidu.com molten.sampling_rate=1 molten.service_name=local molten.sink_syslog_unix_socket=syslog molten.sink_log_path=/var/log/molten/ ` docker环境下 molten.sink_type=1、2有输出,molten.sink_type=4 乱写地址没有报错。我怀疑没有调用curl扩展,系统环境对这个会有影响吗,有日志可查吗? 谢谢

silkcutKs commented 5 years ago

@zshbsm
image 这个是不是显示在命令行中?docker环境中确认有libcurl吗?

joy2fun commented 5 years ago

php 7.2 环境,也有类似的情况

root@0d406b653762:/app# php -i | grep molten
Additional .ini files parsed => /usr/local/etc/php/conf.d/docker-php-ext-molten.ini,
molten
molten support => enabled
molten version => 0.1.2beta
molten.enable => 1 => 1
molten.notify_uri => no value => no value
molten.open_report => 0 => 0
molten.output_type => 1 => 1
molten.report_interval => 60 => 60
molten.report_limit => 100 => 100
molten.sampling_rate => 1 => 1
molten.sampling_request => 1000 => 1000
molten.sampling_type => 1 => 1
molten.service_name => t1 => t1
molten.sink_http_uri => http://172.25.0.17:9411/api/v2/spans => http://172.25.0.17:9411/api/v2/spans
molten.sink_kafka_brokers => no value => no value
molten.sink_kafka_topic => no value => no value
molten.sink_log_path => /var/wd/log/tracing/php/ => /var/wd/log/tracing/php/
molten.sink_syslog_unix_socket => no value => no value
molten.sink_type => 4 => 4
molten.span_format => zipkin_v2 => zipkin_v2
molten.tracing_cli => 0 => 0
root@0d406b653762:/app# curl -XPOST -d''  http://172.25.0.17:9411/api/v2/spans
curl: no URL specified!
curl: try 'curl --help' or 'curl --manual' for more information
root@0d406b653762:/app# curl -XPOST -d '{}'  http://172.25.0.17:9411/api/v2/spans
Expected a JSON_V2 encoded list
root@0d406b653762:/app# dpkg -l|grep curl
ii  curl                          7.52.1-5+deb9u9                amd64        command line tool for transferring data with URL syntax
ii  libcurl3:amd64                7.52.1-5+deb9u9                amd64        easy-to-use client-side URL transfer library (OpenSSL flavour)
zshbsm commented 5 years ago

@silkcutKs @joy2fun 解决了就是缺少libcurl-devel 本地环境编译的时候有装,docker环境没有。最关键的啊 就是中文文档上没有写。。。。建议加一下 我搞了2天。。。 企业微信20190426064743