Closed XCY2018 closed 4 years ago
First praise, the description is very clear, I will see if I can reproduce it.
TRANS_BY_GPT3
Unable to reproduce the issue, please provide:
TRANS_BY_GPT3
Also, could you please provide some additional information on how to start SRS using Docker?
TRANS_BY_GPT3
docker pull ossrs/srs:3.0
docker run -v /root/config.conf:/srs/conf/docker.conf -p 1935:1935 -p 8080:8080 -p 9090:9090 ossrs/srs:3.0
Pulling the new SRS:3 using Docker, both streams are now playing normally. The Xshell running on the edge is giving a prompt. Is there any impact?
TRANS_BY_GPT3
servA,IP 192.168.0.60
[BEGIN] 2019/11/30 14:23:14
A.conf:/usr/local/srs/conf/srs.conf ossrs/srs:3
[2019-11-30 06:23:30.234][Trace][1][0] XCORE-SRS/3.0.60(OuXuli)
[2019-11-30 06:23:30.234][Trace][1][0] config parse complete
[2019-11-30 06:23:30.234][Trace][1][0] write log to console
[2019-11-30 06:23:30.234][Trace][1][0] SRS/3.0.60(OuXuli)
[2019-11-30 06:23:30.234][Trace][1][0] license: The MIT License (MIT)
[2019-11-30 06:23:30.234][Trace][1][0] contributors: winlin<winlin@vip.126.com> wenjie.zhao<740936897@qq.com> xiangcheng.liu<liuxc0116@foxmail.com> naijia.liu<youngcow@youngcow.net> alcoholyi<alcoholyi@qq.com> byteman<wangchen2011@gmail.com> chad.wang<chad.wang.cn@gmail.com> suhetao<suhetao@gmail.com> Johnny<fengjihu@163.com> karthikeyan<keyanmca@gmail.com> StevenLiu<lq@chinaffmpeg.org> zhengfl<zhengfl_1989@126.com> tufang14<breadbean1449@gmail.com> allspace<allspace@gmail.com> niesongsong<nie950@gmail.com> rudeb0t<nimrod@themanxgroup.tw> CallMeNP<np.liamg@gmail.com> synote<synote@qq.com> lovecat<littlefawn@163.com> panda1986<542638787@qq.com> YueHonghui<hongf.yue@hotmail.com> ThomasDreibholz<dreibh@simula.no> JuntaoLiu<juntliu@gmail.com> RocFang<fangpeng1986@gmail.com> MakarovYaroslav<yaroslav.makarov.97@mail.ru> MirkoVelic<mvelic@inoxx.net> HuiZhang(huzhang2)<huzhang2@cisco.com> OtterWa<simpleotter23@gmail.com> walkermi<172192667@qq.com> haofz<fuzhuang.hao@vhall.com> ME_Kun_Han<hanvskun@hotmail.com> ljx0305<ljx0305@gmail.com> cenxinwei<censhanhe@163.com> StarBrilliant<m13253@hotmail.com> xubin<xubin@chnvideo.com> intliang<yintiliang@gmail.com> flowerwrong<sysuyangkang@gmail.com>
[2019-11-30 06:23:30.234][Trace][1][0] build: 2019-11-30 04:25:36, configure:--x86-x64 , uname: Linux 3b43bfff84ee 4.9.60-linuxkit-aufs #1 SMP Mon Nov 6 16:00:12 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[2019-11-30 06:23:30.234][Trace][1][0] configure detail: --prefix=/usr/local/srs --with-hls --with-hds --with-dvr --without-nginx --with-ssl --without-ffmpeg --with-transcode --with-ingest --with-stat --with-http-callback --with-http-server --with-stream-caster --with-http-api --with-librtmp --without-research --with-utest --without-gperf --without-gmc --without-gmd --without-gmp --without-gcp --without-gprof --without-arm-ubuntu12 --without-mips-ubuntu12 --log-trace
[2019-11-30 06:23:30.234][Trace][1][0] cwd=/usr/local/srs, work_dir=./
[2019-11-30 06:23:30.234][Trace][1][0] srs checking config...
[2019-11-30 06:23:30.235][Trace][1][0] ips, iface[0] eth0 ipv4 0x11043 172.17.0.2
[2019-11-30 06:23:30.235][Trace][1][0] devices, intranet eth0 172.17.0.2
[2019-11-30 06:23:30.235][Warn][1][0][0] stats network use index=0, ip=172.17.0.2
[2019-11-30 06:23:30.235][Warn][1][0][0] stats disk not configed, disk iops disabled.
[2019-11-30 06:23:30.235][Trace][1][0] write log to console
[2019-11-30 06:23:30.235][Trace][1][0] features, rch:on, dash:on, hls:on, hds:on, hc:on, ha:on, hs:on, hp:on, dvr:on, trans:on, inge:on, stat:on, nginx:off, ff:off, sc:on
[2019-11-30 06:23:30.235][Trace][1][0] SRS on amd64 x86_64, glibc2.17, conf:conf/srs.conf, limit:1000, writev:1024, encoding:little-endian, HZ:100
[2019-11-30 06:23:30.235][Trace][1][0] mw sleep:350ms. mr enabled:on, default:0, sleep:350ms
[2019-11-30 06:23:30.235][Trace][1][0] gc:on, pq:30000ms, cscc:[0,16), csa:on, tn:on(may hurts performance), ss:auto(guess by merged write)
[2019-11-30 06:23:30.235][Trace][1][0] system default latency(ms): mw(0-350) + mr(0-350) + play-queue(0-30000)
[2019-11-30 06:23:30.235][Warn][1][0][0] Develop is unstable, please use branch: git checkout -b 2.0release origin/2.0release
[2019-11-30 06:23:30.235][Trace][1][0] http: root mount to ./objs/nginx/html
[2019-11-30 06:23:30.235][Trace][1][0] st_init success, use epoll
[2019-11-30 06:23:30.235][Trace][1][100] server main cid=100, pid=1, ppid=0, asprocess=0
[2019-11-30 06:23:30.235][Trace][1][100] write pid=1 to ./objs/origin.cluster.serverA.pid success!
[2019-11-30 06:23:30.235][Trace][1][100] RTMP listen at tcp://0.0.0.0:1935, fd=7
[2019-11-30 06:23:30.235][Trace][1][100] HTTP-API listen at tcp://0.0.0.0:9090, fd=8
[2019-11-30 06:23:30.235][Trace][1][100] signal installed, reload=1, reopen=10, grace_quit=15
[2019-11-30 06:23:30.235][Trace][1][100] http: api mount /console to ./objs/nginx/html/console
[2019-11-30 06:23:47.357][Trace][1][105] RTMP client ip=172.17.0.2, fd=9
[2019-11-30 06:23:47.360][Trace][1][105] simple handshake success.
[2019-11-30 06:23:47.360][Trace][1][105] connect app, tcUrl=rtmp://192.168.0.60/video, pageUrl=, swfUrl=rtmp://192.168.0.60/video, schema=rtmp, vhost=192.168.0.60, port=1935, app=video, args=null
[2019-11-30 06:23:47.402][Trace][1][105] client identified, type=fmle-publish, vhost=192.168.0.60, app=video, stream=test1, param=, duration=0ms
[2019-11-30 06:23:47.403][Trace][1][105] connected stream, tcUrl=rtmp://192.168.0.60/video, pageUrl=, swfUrl=rtmp://192.168.0.60/video, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=, args=null
[2019-11-30 06:23:47.403][Trace][1][105] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:23:47.445][Trace][1][105] ignore disabled exec for vhost=__defaultVhost__
[2019-11-30 06:23:47.445][Trace][1][105] start publish mr=0/350, p1stpt=20000, pnt=5000, tcp_nodelay=0
[2019-11-30 06:23:47.485][Trace][1][105] got metadata, width=1272, height=694
[2019-11-30 06:23:48.058][Trace][1][105] protocol in.buffer=0, in.ack=0, out.ack=2500000, in.chunk=4096, out.chunk=60000
[2019-11-30 06:23:48.058][Trace][1][105] 7B audio sh, codec(10, profile=LC, 2channels, 0kbps, 44100HZ), flv(16bits, 2channels, 44100HZ)
[2019-11-30 06:23:48.058][Trace][1][105] 46B video sh, codec(7, profile=High, level=3.1, 1280x704, 0kbps, 0.0fps, 0.0s)
[2019-11-30 06:23:54.238][Trace][1][106] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:23:54.242][Trace][1][106] complex handshake success
[2019-11-30 06:23:54.243][Trace][1][106] connect app, tcUrl=rtmp://192.168.0.60/video, pageUrl=, swfUrl=, schema=rtmp, vhost=192.168.0.60, port=1935, app=video, args=(obj)
[2019-11-30 06:23:54.243][Trace][1][106] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=105
[2019-11-30 06:23:54.284][Trace][1][106] client identified, type=Play, vhost=192.168.0.60, app=video, stream=test1, param=?&vhost=192.168.0.60, duration=-1ms
[2019-11-30 06:23:54.284][Trace][1][106] connected stream, tcUrl=rtmp://192.168.0.60/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=?&vhost=192.168.0.60, args=(obj)
[2019-11-30 06:23:54.285][Trace][1][106] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=0, source_id=105[105]
[2019-11-30 06:23:54.285][Trace][1][106] dispatch cached gop success. count=370, duration=5081
[2019-11-30 06:23:54.285][Trace][1][106] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:23:54.285][Trace][1][106] set fd=10, SO_SNDBUF=87040=>175000, buffer=350ms
[2019-11-30 06:23:54.285][Trace][1][106] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:23:54.285][Warn][1][106][11] resize iovs 256 => 512, max_msgs=128
[2019-11-30 06:23:54.288][Trace][1][106] protocol in.buffer=1000, in.ack=2500000, out.ack=2500000, in.chunk=128, out.chunk=60000
[2019-11-30 06:23:59.885][Warn][1][106][104] client disconnect peer. ret=1007
[2019-11-30 06:24:00.013][Trace][1][107] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:00.016][Trace][1][107] complex handshake success
[2019-11-30 06:24:00.057][Trace][1][107] connect app, tcUrl=rtmp://192.168.0.60/video, pageUrl=, swfUrl=, schema=rtmp, vhost=192.168.0.60, port=1935, app=video, args=(obj)
[2019-11-30 06:24:00.057][Trace][1][107] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:00.099][Trace][1][107] client identified, type=Play, vhost=192.168.0.60, app=video, stream=test2, param=?&vhost=192.168.0.60, duration=-1ms
[2019-11-30 06:24:00.099][Trace][1][107] connected stream, tcUrl=rtmp://192.168.0.60/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=192.168.0.60, args=(obj)
[2019-11-30 06:24:00.099][Trace][1][107] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:00.102][Trace][1][107] ignore private address: 172.17.0.2
[2019-11-30 06:24:00.102][Warn][1][107][11] use private address as ip: 172.17.0.2
[2019-11-30 06:24:00.102][Trace][1][107] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=192.168.0.60&app=video&stream=test2, response={"code":0,"data":{"query":{"ip":"192.168.0.60","vhost":"__defaultVhost__","app":"video","stream":"test2"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:00.102][Trace][1][107] rtmp: redirect in cluster, from=192.168.0.60:1935, target=172.17.0.2:1935, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=192.168.0.60&app=video&stream=test2
[2019-11-30 06:24:00.140][Trace][1][107] client finished.
[2019-11-30 06:24:08.264][Trace][1][108] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:08.266][Warn][1][108][11] regenerate 128B key, current=127B
[2019-11-30 06:24:08.269][Trace][1][108] complex handshake success
[2019-11-30 06:24:08.269][Trace][1][108] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:08.269][Trace][1][108] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:08.309][Trace][1][108] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:08.309][Trace][1][108] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:08.310][Trace][1][108] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:08.313][Trace][1][108] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, response={"code":0,"data":{"query":{"ip":"172.17.0.2","vhost":"__defaultVhost__","app":"video","stream":"test2"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:08.313][Trace][1][108] rtmp: redirect in cluster, from=172.17.0.2:1935, target=172.17.0.2:1935, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2
[2019-11-30 06:24:08.350][Trace][1][108] client finished.
[2019-11-30 06:24:12.445][Trace][1][105] <- CPB time=20002485, okbps=1,0,0, ikbps=1277,0,0, mr=0/350, p1stpt=20000, pnt=5000
[2019-11-30 06:24:16.476][Trace][1][109] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:16.479][Trace][1][109] complex handshake success
[2019-11-30 06:24:16.480][Trace][1][109] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:16.480][Trace][1][109] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:16.521][Trace][1][109] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:16.521][Trace][1][109] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:16.522][Trace][1][109] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:16.525][Trace][1][109] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, response={"code":0,"data":{"query":{"ip":"172.17.0.2","vhost":"__defaultVhost__","app":"video","stream":"test2"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:16.525][Trace][1][109] rtmp: redirect in cluster, from=172.17.0.2:1935, target=172.17.0.2:1935, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2
[2019-11-30 06:24:16.562][Trace][1][109] client finished.
[2019-11-30 06:24:21.849][Trace][1][110] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:21.850][Trace][1][110] HTTP API POST http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=192.168.0.59&app=video&stream=test1, content-length=0, chunked=0/0
[2019-11-30 06:24:21.852][Warn][1][110][104] client disconnect peer. ret=1007
[2019-11-30 06:24:22.445][Trace][1][105] <- CPB time=30007583, okbps=0,0,0, ikbps=1325,1275,0, mr=0/350, p1stpt=20000, pnt=5000
[2019-11-30 06:24:24.685][Trace][1][111] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:24.688][Trace][1][111] complex handshake success
[2019-11-30 06:24:24.728][Trace][1][111] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:24.728][Trace][1][111] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:24.769][Trace][1][111] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:24.769][Trace][1][111] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:24.769][Trace][1][111] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:24.772][Trace][1][111] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, response={"code":0,"data":{"query":{"ip":"172.17.0.2","vhost":"__defaultVhost__","app":"video","stream":"test2"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:24.772][Trace][1][111] rtmp: redirect in cluster, from=172.17.0.2:1935, target=172.17.0.2:1935, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2
[2019-11-30 06:24:24.812][Trace][1][111] client finished.
[2019-11-30 06:24:30.405][Trace][1][112] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:30.406][Trace][1][112] HTTP API POST http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test1, content-length=0, chunked=0/0
[2019-11-30 06:24:30.407][Warn][1][112][104] client disconnect peer. ret=1007
[2019-11-30 06:24:32.445][Trace][1][105] <- CPB time=40010610, okbps=0,0,0, ikbps=1321,1275,0, mr=0/350, p1stpt=20000, pnt=5000
[2019-11-30 06:24:32.935][Trace][1][113] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:32.938][Trace][1][113] complex handshake success
[2019-11-30 06:24:32.979][Trace][1][113] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:32.979][Trace][1][113] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:33.022][Trace][1][113] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:33.022][Trace][1][113] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:33.022][Trace][1][113] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:33.025][Trace][1][113] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, response={"code":0,"data":{"query":{"ip":"172.17.0.2","vhost":"__defaultVhost__","app":"video","stream":"test2"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:33.025][Trace][1][113] rtmp: redirect in cluster, from=172.17.0.2:1935, target=172.17.0.2:1935, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2
[2019-11-30 06:24:33.063][Trace][1][113] client finished.
[2019-11-30 06:24:38.967][Trace][1][114] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:38.968][Trace][1][114] HTTP API POST http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test1, content-length=0, chunked=0/0
[2019-11-30 06:24:38.969][Warn][1][114][104] client disconnect peer. ret=1007
[2019-11-30 06:24:41.186][Trace][1][115] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:41.189][Trace][1][115] complex handshake success
[2019-11-30 06:24:41.229][Trace][1][115] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:41.229][Trace][1][115] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:41.271][Trace][1][115] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:41.271][Trace][1][115] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:41.271][Trace][1][115] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:41.274][Trace][1][115] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, response={"code":0,"data":{"query":{"ip":"172.17.0.2","vhost":"__defaultVhost__","app":"video","stream":"test2"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:41.274][Trace][1][115] rtmp: redirect in cluster, from=172.17.0.2:1935, target=172.17.0.2:1935, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2
[2019-11-30 06:24:41.313][Trace][1][115] client finished.
[2019-11-30 06:24:42.445][Trace][1][105] <- CPB time=50012001, okbps=0,0,0, ikbps=1332,1275,0, mr=0/350, p1stpt=20000, pnt=5000
[2019-11-30 06:24:47.529][Trace][1][116] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:47.530][Trace][1][116] HTTP API POST http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test1, content-length=0, chunked=0/0
[2019-11-30 06:24:47.531][Warn][1][116][104] client disconnect peer. ret=1007
[2019-11-30 06:24:49.438][Trace][1][117] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:49.441][Trace][1][117] complex handshake success
[2019-11-30 06:24:49.482][Trace][1][117] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:49.482][Trace][1][117] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:49.524][Trace][1][117] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:49.524][Trace][1][117] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:49.524][Trace][1][117] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:49.527][Trace][1][117] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, response={"code":0,"data":{"query":{"ip":"172.17.0.2","vhost":"__defaultVhost__","app":"video","stream":"test2"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:49.528][Trace][1][117] rtmp: redirect in cluster, from=172.17.0.2:1935, target=172.17.0.2:1935, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2
[2019-11-30 06:24:49.565][Trace][1][117] client finished.
[END] 2019/11/30 14:24:51
servB ip 192.168.0.59
[BEGIN] 2019/11/30 14:23:22
B.conf:/usr/local/srs/conf/srs.conf ossrs/srs:3
[2019-11-30 06:23:32.513][Trace][1][0] XCORE-SRS/3.0.60(OuXuli)
[2019-11-30 06:23:32.513][Trace][1][0] config parse complete
[2019-11-30 06:23:32.513][Trace][1][0] write log to console
[2019-11-30 06:23:32.513][Trace][1][0] SRS/3.0.60(OuXuli)
[2019-11-30 06:23:32.513][Trace][1][0] license: The MIT License (MIT)
[2019-11-30 06:23:32.513][Trace][1][0] contributors: winlin<winlin@vip.126.com> wenjie.zhao<740936897@qq.com> xiangcheng.liu<liuxc0116@foxmail.com> naijia.liu<youngcow@youngcow.net> alcoholyi<alcoholyi@qq.com> byteman<wangchen2011@gmail.com> chad.wang<chad.wang.cn@gmail.com> suhetao<suhetao@gmail.com> Johnny<fengjihu@163.com> karthikeyan<keyanmca@gmail.com> StevenLiu<lq@chinaffmpeg.org> zhengfl<zhengfl_1989@126.com> tufang14<breadbean1449@gmail.com> allspace<allspace@gmail.com> niesongsong<nie950@gmail.com> rudeb0t<nimrod@themanxgroup.tw> CallMeNP<np.liamg@gmail.com> synote<synote@qq.com> lovecat<littlefawn@163.com> panda1986<542638787@qq.com> YueHonghui<hongf.yue@hotmail.com> ThomasDreibholz<dreibh@simula.no> JuntaoLiu<juntliu@gmail.com> RocFang<fangpeng1986@gmail.com> MakarovYaroslav<yaroslav.makarov.97@mail.ru> MirkoVelic<mvelic@inoxx.net> HuiZhang(huzhang2)<huzhang2@cisco.com> OtterWa<simpleotter23@gmail.com> walkermi<172192667@qq.com> haofz<fuzhuang.hao@vhall.com> ME_Kun_Han<hanvskun@hotmail.com> ljx0305<ljx0305@gmail.com> cenxinwei<censhanhe@163.com> StarBrilliant<m13253@hotmail.com> xubin<xubin@chnvideo.com> intliang<yintiliang@gmail.com> flowerwrong<sysuyangkang@gmail.com>
[2019-11-30 06:23:32.513][Trace][1][0] build: 2019-11-30 04:25:36, configure:--x86-x64 , uname: Linux 3b43bfff84ee 4.9.60-linuxkit-aufs #1 SMP Mon Nov 6 16:00:12 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[2019-11-30 06:23:32.513][Trace][1][0] configure detail: --prefix=/usr/local/srs --with-hls --with-hds --with-dvr --without-nginx --with-ssl --without-ffmpeg --with-transcode --with-ingest --with-stat --with-http-callback --with-http-server --with-stream-caster --with-http-api --with-librtmp --without-research --with-utest --without-gperf --without-gmc --without-gmd --without-gmp --without-gcp --without-gprof --without-arm-ubuntu12 --without-mips-ubuntu12 --log-trace
[2019-11-30 06:23:32.513][Trace][1][0] cwd=/usr/local/srs, work_dir=./
[2019-11-30 06:23:32.513][Trace][1][0] srs checking config...
[2019-11-30 06:23:32.514][Trace][1][0] ips, iface[0] eth0 ipv4 0x11043 172.17.0.2
[2019-11-30 06:23:32.514][Trace][1][0] devices, intranet eth0 172.17.0.2
[2019-11-30 06:23:32.514][Warn][1][0][0] stats network use index=0, ip=172.17.0.2
[2019-11-30 06:23:32.514][Warn][1][0][0] stats disk not configed, disk iops disabled.
[2019-11-30 06:23:32.514][Trace][1][0] write log to console
[2019-11-30 06:23:32.514][Trace][1][0] features, rch:on, dash:on, hls:on, hds:on, hc:on, ha:on, hs:on, hp:on, dvr:on, trans:on, inge:on, stat:on, nginx:off, ff:off, sc:on
[2019-11-30 06:23:32.514][Trace][1][0] SRS on amd64 x86_64, glibc2.17, conf:conf/srs.conf, limit:1000, writev:1024, encoding:little-endian, HZ:100
[2019-11-30 06:23:32.514][Trace][1][0] mw sleep:350ms. mr enabled:on, default:0, sleep:350ms
[2019-11-30 06:23:32.514][Trace][1][0] gc:on, pq:30000ms, cscc:[0,16), csa:on, tn:on(may hurts performance), ss:auto(guess by merged write)
[2019-11-30 06:23:32.514][Trace][1][0] system default latency(ms): mw(0-350) + mr(0-350) + play-queue(0-30000)
[2019-11-30 06:23:32.514][Warn][1][0][0] Develop is unstable, please use branch: git checkout -b 2.0release origin/2.0release
[2019-11-30 06:23:32.514][Trace][1][0] http: root mount to ./objs/nginx/html
[2019-11-30 06:23:32.514][Trace][1][0] st_init success, use epoll
[2019-11-30 06:23:32.514][Trace][1][100] server main cid=100, pid=1, ppid=0, asprocess=0
[2019-11-30 06:23:32.514][Trace][1][100] write pid=1 to ./objs/origin.cluster.serverB.pid success!
[2019-11-30 06:23:32.514][Trace][1][100] RTMP listen at tcp://0.0.0.0:1935, fd=7
[2019-11-30 06:23:32.514][Trace][1][100] HTTP-API listen at tcp://0.0.0.0:9090, fd=8
[2019-11-30 06:23:32.514][Trace][1][100] signal installed, reload=1, reopen=10, grace_quit=15
[2019-11-30 06:23:32.514][Trace][1][100] http: api mount /console to ./objs/nginx/html/console
[2019-11-30 06:23:48.664][Trace][1][105] RTMP client ip=172.17.0.2, fd=9
[2019-11-30 06:23:48.667][Trace][1][105] simple handshake success.
[2019-11-30 06:23:48.668][Trace][1][105] connect app, tcUrl=rtmp://192.168.0.59/video, pageUrl=, swfUrl=rtmp://192.168.0.59/video, schema=rtmp, vhost=192.168.0.59, port=1935, app=video, args=null
[2019-11-30 06:23:48.710][Trace][1][105] client identified, type=fmle-publish, vhost=192.168.0.59, app=video, stream=test2, param=, duration=0ms
[2019-11-30 06:23:48.710][Trace][1][105] connected stream, tcUrl=rtmp://192.168.0.59/video, pageUrl=, swfUrl=rtmp://192.168.0.59/video, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=, args=null
[2019-11-30 06:23:48.710][Trace][1][105] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:23:48.752][Trace][1][105] ignore disabled exec for vhost=__defaultVhost__
[2019-11-30 06:23:48.752][Trace][1][105] start publish mr=0/350, p1stpt=20000, pnt=5000, tcp_nodelay=0
[2019-11-30 06:23:48.793][Trace][1][105] got metadata, width=1272, height=694
[2019-11-30 06:23:49.911][Trace][1][105] protocol in.buffer=0, in.ack=0, out.ack=2500000, in.chunk=4096, out.chunk=60000
[2019-11-30 06:23:49.911][Trace][1][105] 7B audio sh, codec(10, profile=LC, 2channels, 0kbps, 44100HZ), flv(16bits, 2channels, 44100HZ)
[2019-11-30 06:23:49.911][Trace][1][105] 46B video sh, codec(7, profile=High, level=3.1, 1280x704, 0kbps, 0.0fps, 0.0s)
[2019-11-30 06:24:00.100][Trace][1][106] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:00.101][Trace][1][106] HTTP API POST http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=192.168.0.60&app=video&stream=test2, content-length=0, chunked=0/0
[2019-11-30 06:24:00.101][Trace][1][106] ignore private address: 172.17.0.2
[2019-11-30 06:24:00.101][Warn][1][106][11] use private address as ip: 172.17.0.2
[2019-11-30 06:24:00.102][Warn][1][106][104] client disconnect peer. ret=1007
[2019-11-30 06:24:08.311][Trace][1][107] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:08.312][Trace][1][107] HTTP API POST http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, content-length=0, chunked=0/0
[2019-11-30 06:24:08.313][Warn][1][107][104] client disconnect peer. ret=1007
[2019-11-30 06:24:13.752][Trace][1][105] <- CPB time=20003676, okbps=1,0,0, ikbps=1320,0,0, mr=0/350, p1stpt=20000, pnt=5000
[2019-11-30 06:24:16.523][Trace][1][108] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:16.524][Trace][1][108] HTTP API POST http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, content-length=0, chunked=0/0
[2019-11-30 06:24:16.525][Warn][1][108][104] client disconnect peer. ret=1007
[2019-11-30 06:24:21.843][Trace][1][109] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:21.846][Trace][1][109] complex handshake success
[2019-11-30 06:24:21.846][Trace][1][109] connect app, tcUrl=rtmp://192.168.0.59/video, pageUrl=, swfUrl=, schema=rtmp, vhost=192.168.0.59, port=1935, app=video, args=(obj)
[2019-11-30 06:24:21.846][Trace][1][109] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=112
[2019-11-30 06:24:21.847][Trace][1][109] client identified, type=Play, vhost=192.168.0.59, app=video, stream=test1, param=?&vhost=192.168.0.59, duration=-1ms
[2019-11-30 06:24:21.848][Trace][1][109] connected stream, tcUrl=rtmp://192.168.0.59/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=?&vhost=192.168.0.59, args=(obj)
[2019-11-30 06:24:21.848][Trace][1][109] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:21.852][Trace][1][109] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=192.168.0.59&app=video&stream=test1, response={"code":0,"data":{"query":{"ip":"192.168.0.59","vhost":"__defaultVhost__","app":"video","stream":"test1"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:21.852][Trace][1][109] rtmp: redirect in cluster, from=192.168.0.59:1935, target=172.17.0.2:1935, url=http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=192.168.0.59&app=video&stream=test1
[2019-11-30 06:24:21.888][Trace][1][109] client finished.
[2019-11-30 06:24:23.752][Trace][1][105] <- CPB time=30004067, okbps=0,1,0, ikbps=1324,1321,0, mr=0/350, p1stpt=20000, pnt=5000
[2019-11-30 06:24:24.771][Trace][1][110] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:24.771][Trace][1][110] HTTP API POST http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, content-length=0, chunked=0/0
[2019-11-30 06:24:24.772][Warn][1][110][104] client disconnect peer. ret=1007
[2019-11-30 06:24:30.320][Trace][1][111] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:30.323][Trace][1][111] complex handshake success
[2019-11-30 06:24:30.363][Trace][1][111] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:30.363][Trace][1][111] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=112
[2019-11-30 06:24:30.404][Trace][1][111] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test1, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:30.404][Trace][1][111] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:30.404][Trace][1][111] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:30.407][Trace][1][111] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test1, response={"code":0,"data":{"query":{"ip":"172.17.0.2","vhost":"__defaultVhost__","app":"video","stream":"test1"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:30.407][Trace][1][111] rtmp: redirect in cluster, from=172.17.0.2:1935, target=172.17.0.2:1935, url=http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test1
[2019-11-30 06:24:30.446][Trace][1][111] client finished.
[2019-11-30 06:24:33.023][Trace][1][112] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:33.024][Trace][1][112] HTTP API POST http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, content-length=0, chunked=0/0
[2019-11-30 06:24:33.025][Warn][1][112][104] client disconnect peer. ret=1007
[2019-11-30 06:24:33.752][Trace][1][105] <- CPB time=40005498, okbps=0,1,0, ikbps=1332,1321,0, mr=0/350, p1stpt=20000, pnt=5000
[2019-11-30 06:24:38.880][Trace][1][113] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:38.884][Trace][1][113] complex handshake success
[2019-11-30 06:24:38.925][Trace][1][113] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:38.925][Trace][1][113] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=112
[2019-11-30 06:24:38.966][Trace][1][113] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test1, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:38.966][Trace][1][113] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:38.967][Trace][1][113] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:38.968][Trace][1][113] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test1, response={"code":0,"data":{"query":{"ip":"172.17.0.2","vhost":"__defaultVhost__","app":"video","stream":"test1"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:38.970][Trace][1][113] rtmp: redirect in cluster, from=172.17.0.2:1935, target=172.17.0.2:1935, url=http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test1
[2019-11-30 06:24:39.007][Trace][1][113] client finished.
[2019-11-30 06:24:41.272][Trace][1][114] api get peer ip success. ip=172.17.0.2
[2019-11-30 06:24:41.273][Trace][1][114] HTTP API POST http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test2, content-length=0, chunked=0/0
[2019-11-30 06:24:41.274][Warn][1][114][104] client disconnect peer. ret=1007
[2019-11-30 06:24:43.752][Trace][1][105] <- CPB time=50006923, okbps=0,1,0, ikbps=1341,1321,0, mr=0/350, p1stpt=20000, pnt=5000
[2019-11-30 06:24:47.442][Trace][1][115] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:47.446][Trace][1][115] complex handshake success
[2019-11-30 06:24:47.486][Trace][1][115] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:47.486][Trace][1][115] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=112
[2019-11-30 06:24:47.528][Trace][1][115] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test1, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:47.528][Trace][1][115] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:47.528][Trace][1][115] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:47.531][Trace][1][115] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test1, response={"code":0,"data":{"query":{"ip":"172.17.0.2","vhost":"__defaultVhost__","app":"video","stream":"test1"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:47.531][Trace][1][115] rtmp: redirect in cluster, from=172.17.0.2:1935, target=172.17.0.2:1935, url=http://192.168.0.60:9090/api/v1/clusters?vhost=__defaultVhost__&ip=172.17.0.2&app=video&stream=test1
[2019-11-30 06:24:47.570][Trace][1][115] client finished.
[END] 2019/11/30 14:24:49
edge ip:192.168.0.61
[BEGIN] 2019/11/30 14:23:27
onf:/usr/local/srs/conf/srs.conf ossrs/srs:3
[2019-11-30 06:23:34.563][Trace][1][0] XCORE-SRS/3.0.60(OuXuli)
[2019-11-30 06:23:34.564][Trace][1][0] config parse complete
[2019-11-30 06:23:34.564][Trace][1][0] write log to console
[2019-11-30 06:23:34.564][Trace][1][0] SRS/3.0.60(OuXuli)
[2019-11-30 06:23:34.564][Trace][1][0] license: The MIT License (MIT)
[2019-11-30 06:23:34.564][Trace][1][0] contributors: winlin<winlin@vip.126.com> wenjie.zhao<740936897@qq.com> xiangcheng.liu<liuxc0116@foxmail.com> naijia.liu<youngcow@youngcow.net> alcoholyi<alcoholyi@qq.com> byteman<wangchen2011@gmail.com> chad.wang<chad.wang.cn@gmail.com> suhetao<suhetao@gmail.com> Johnny<fengjihu@163.com> karthikeyan<keyanmca@gmail.com> StevenLiu<lq@chinaffmpeg.org> zhengfl<zhengfl_1989@126.com> tufang14<breadbean1449@gmail.com> allspace<allspace@gmail.com> niesongsong<nie950@gmail.com> rudeb0t<nimrod@themanxgroup.tw> CallMeNP<np.liamg@gmail.com> synote<synote@qq.com> lovecat<littlefawn@163.com> panda1986<542638787@qq.com> YueHonghui<hongf.yue@hotmail.com> ThomasDreibholz<dreibh@simula.no> JuntaoLiu<juntliu@gmail.com> RocFang<fangpeng1986@gmail.com> MakarovYaroslav<yaroslav.makarov.97@mail.ru> MirkoVelic<mvelic@inoxx.net> HuiZhang(huzhang2)<huzhang2@cisco.com> OtterWa<simpleotter23@gmail.com> walkermi<172192667@qq.com> haofz<fuzhuang.hao@vhall.com> ME_Kun_Han<hanvskun@hotmail.com> ljx0305<ljx0305@gmail.com> cenxinwei<censhanhe@163.com> StarBrilliant<m13253@hotmail.com> xubin<xubin@chnvideo.com> intliang<yintiliang@gmail.com> flowerwrong<sysuyangkang@gmail.com>
[2019-11-30 06:23:34.564][Trace][1][0] build: 2019-11-29 09:25:49, configure:--x86-x64 , uname: Linux c59825a96b4e 4.9.60-linuxkit-aufs #1 SMP Mon Nov 6 16:00:12 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[2019-11-30 06:23:34.564][Trace][1][0] configure detail: --prefix=/usr/local/srs --with-hls --with-hds --with-dvr --without-nginx --with-ssl --without-ffmpeg --with-transcode --with-ingest --with-stat --with-http-callback --with-http-server --with-stream-caster --with-http-api --with-librtmp --without-research --with-utest --without-gperf --without-gmc --without-gmd --without-gmp --without-gcp --without-gprof --without-arm-ubuntu12 --without-mips-ubuntu12 --log-trace
[2019-11-30 06:23:34.564][Trace][1][0] cwd=/usr/local/srs, work_dir=./
[2019-11-30 06:23:34.564][Trace][1][0] srs checking config...
[2019-11-30 06:23:34.564][Trace][1][0] ips, iface[0] eth0 ipv4 0x11043 172.17.0.2
[2019-11-30 06:23:34.564][Trace][1][0] devices, intranet eth0 172.17.0.2
[2019-11-30 06:23:34.564][Warn][1][0][0] stats network use index=0, ip=172.17.0.2
[2019-11-30 06:23:34.564][Warn][1][0][0] stats disk not configed, disk iops disabled.
[2019-11-30 06:23:34.564][Trace][1][0] write log to console
[2019-11-30 06:23:34.564][Trace][1][0] features, rch:on, dash:on, hls:on, hds:on, hc:on, ha:on, hs:on, hp:on, dvr:on, trans:on, inge:on, stat:on, nginx:off, ff:off, sc:on
[2019-11-30 06:23:34.564][Trace][1][0] SRS on amd64 x86_64, glibc2.17, conf:conf/srs.conf, limit:1000, writev:1024, encoding:little-endian, HZ:100
[2019-11-30 06:23:34.564][Trace][1][0] mw sleep:350ms. mr enabled:on, default:0, sleep:350ms
[2019-11-30 06:23:34.564][Trace][1][0] gc:on, pq:30000ms, cscc:[0,16), csa:on, tn:on(may hurts performance), ss:auto(guess by merged write)
[2019-11-30 06:23:34.564][Trace][1][0] system default latency(ms): mw(0-350) + mr(0-350) + play-queue(0-30000)
[2019-11-30 06:23:34.564][Warn][1][0][0] Develop is unstable, please use branch: git checkout -b 2.0release origin/2.0release
[2019-11-30 06:23:34.564][Trace][1][0] http: root mount to ./objs/nginx/html
[2019-11-30 06:23:34.564][Trace][1][0] st_init success, use epoll
[2019-11-30 06:23:34.564][Trace][1][100] server main cid=100, pid=1, ppid=0, asprocess=0
[2019-11-30 06:23:34.564][Trace][1][100] write pid=1 to objs/edge.pid success!
[2019-11-30 06:23:34.565][Trace][1][100] RTMP listen at tcp://0.0.0.0:1935, fd=7
[2019-11-30 06:23:34.565][Trace][1][100] signal installed, reload=1, reopen=10, grace_quit=15
[2019-11-30 06:23:34.565][Trace][1][100] http: api mount /console to ./objs/nginx/html/console
[2019-11-30 06:23:54.069][Trace][1][104] RTMP client ip=172.17.0.2, fd=8
[2019-11-30 06:23:54.073][Trace][1][104] complex handshake success
[2019-11-30 06:23:54.115][Trace][1][104] connect app, tcUrl=rtmp://192.168.0.61:1935/video, pageUrl=, swfUrl=, schema=rtmp, vhost=192.168.0.61, port=1935, app=video, args=null
[2019-11-30 06:23:54.196][Trace][1][104] ignore AMF0/AMF3 command message.
[2019-11-30 06:23:54.236][Trace][1][104] ignore AMF0/AMF3 command message.
[2019-11-30 06:23:54.237][Trace][1][104] client identified, type=Play, vhost=192.168.0.61, app=video, stream=test1, param=, duration=-1ms
[2019-11-30 06:23:54.237][Trace][1][104] connected stream, tcUrl=rtmp://192.168.0.61:1935/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=, args=null
[2019-11-30 06:23:54.237][Trace][1][104] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=1, source_id=-1[-1]
[2019-11-30 06:23:54.237][Trace][1][104] dispatch cached gop success. count=0, duration=-1
[2019-11-30 06:23:54.237][Trace][1][104] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:23:54.237][Trace][1][104] ignore disabled exec for vhost=__defaultVhost__
[2019-11-30 06:23:54.237][Trace][1][104] set fd=8, SO_SNDBUF=87040=>175000, buffer=350ms
[2019-11-30 06:23:54.237][Trace][1][104] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:23:54.237][Trace][1][104] update source_id=105[105]
[2019-11-30 06:23:54.242][Trace][1][105] complex handshake success.
[2019-11-30 06:23:54.283][Trace][1][105] connected, dsu=1
[2019-11-30 06:23:54.284][Trace][1][105] edge change from 100 to state 101 (pull).
[2019-11-30 06:23:54.285][Trace][1][105] got metadata, width=1272, height=694
[2019-11-30 06:23:54.285][Trace][1][105] protocol in.buffer=0, in.ack=2500000, out.ack=2500000, in.chunk=60000, out.chunk=60000
[2019-11-30 06:23:54.285][Trace][1][105] 7B audio sh, codec(10, profile=LC, 2channels, 0kbps, 44100HZ), flv(16bits, 2channels, 44100HZ)
[2019-11-30 06:23:54.285][Trace][1][105] 46B video sh, codec(7, profile=High, level=3.1, 1280x704, 0kbps, 0.0fps, 0.0s)
[2019-11-30 06:23:54.290][Trace][1][104] protocol in.buffer=3000, in.ack=2500000, out.ack=2500000, in.chunk=128, out.chunk=60000
[2019-11-30 06:23:59.884][Warn][1][105][4] origin disconnected, retry, error code=1007 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : read
thread #105: ingest() [src/app/srs_app_edge.cpp:315][errno=4]
thread #105: recv_message() [src/protocol/srs_rtmp_stack.cpp:354][errno=4]
thread #105: recv_interlaced_message() [src/protocol/srs_rtmp_stack.cpp:877][errno=4]
thread #105: read_basic_header() [src/protocol/srs_rtmp_stack.cpp:972][errno=4]
thread #105: grow() [src/protocol/srs_protocol_stream.cpp:180][errno=4]
thread #105: read() [src/service/srs_service_st.cpp:470][errno=4]
[2019-11-30 06:23:59.884][Trace][1][104] cleanup when unpublish
[2019-11-30 06:23:59.884][Trace][1][104] edge change from 101 to state 0 (init).
[2019-11-30 06:23:59.884][Warn][1][104][4] client disconnect peer. ret=1007
[2019-11-30 06:23:59.888][Trace][1][106] RTMP client ip=172.17.0.2, fd=8
[2019-11-30 06:23:59.891][Trace][1][106] complex handshake success
[2019-11-30 06:23:59.891][Trace][1][106] connect app, tcUrl=rtmp://192.168.0.61:1935/video, pageUrl=, swfUrl=, schema=rtmp, vhost=192.168.0.61, port=1935, app=video, args=null
[2019-11-30 06:23:59.971][Trace][1][106] ignore AMF0/AMF3 command message.
[2019-11-30 06:24:00.011][Trace][1][106] ignore AMF0/AMF3 command message.
[2019-11-30 06:24:00.012][Trace][1][106] client identified, type=Play, vhost=192.168.0.61, app=video, stream=test2, param=, duration=-1ms
[2019-11-30 06:24:00.012][Trace][1][106] connected stream, tcUrl=rtmp://192.168.0.61:1935/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=, args=null
[2019-11-30 06:24:00.012][Trace][1][106] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=1, source_id=-1[-1]
[2019-11-30 06:24:00.012][Trace][1][106] dispatch cached gop success. count=0, duration=-1
[2019-11-30 06:24:00.012][Trace][1][106] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:00.012][Trace][1][106] ignore disabled exec for vhost=__defaultVhost__
[2019-11-30 06:24:00.012][Trace][1][106] set fd=8, SO_SNDBUF=87040=>175000, buffer=350ms
[2019-11-30 06:24:00.012][Trace][1][106] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:00.012][Trace][1][106] update source_id=107[107]
[2019-11-30 06:24:00.016][Trace][1][107] complex handshake success.
[2019-11-30 06:24:00.097][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:00.098][Trace][1][107] edge change from 100 to state 101 (pull).
[2019-11-30 06:24:00.139][Warn][1][107][11] RTMP redirect 192.168.0.59:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:00.140][Trace][1][108] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:00.141][Trace][1][107] complex handshake success.
[2019-11-30 06:24:00.142][Trace][1][108] complex handshake success
[2019-11-30 06:24:00.181][Trace][1][108] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:00.181][Trace][1][108] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:00.222][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:00.222][Trace][1][108] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:00.222][Trace][1][108] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:00.222][Trace][1][108] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=1, source_id=107[107]
[2019-11-30 06:24:00.222][Trace][1][108] dispatch cached gop success. count=0, duration=-1
[2019-11-30 06:24:00.222][Trace][1][108] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:00.222][Trace][1][108] set fd=10, SO_SNDBUF=2626560=>175000, buffer=350ms
[2019-11-30 06:24:00.222][Trace][1][108] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:05.262][Warn][1][107][62] EdgeIngester: Ignore error, code=1011 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : timeout 5000 ms
thread #107: ingest() [src/app/srs_app_edge.cpp:315][errno=62]
thread #107: recv_message() [src/protocol/srs_rtmp_stack.cpp:354][errno=62]
thread #107: recv_interlaced_message() [src/protocol/srs_rtmp_stack.cpp:877][errno=62]
thread #107: read_basic_header() [src/protocol/srs_rtmp_stack.cpp:972][errno=62]
thread #107: grow() [src/protocol/srs_protocol_stream.cpp:180][errno=62]
thread #107: read() [src/service/srs_service_st.cpp:463][errno=62]
[2019-11-30 06:24:08.263][Warn][1][108][104] client disconnect peer. ret=1007
[2019-11-30 06:24:08.268][Trace][1][107] complex handshake success.
[2019-11-30 06:24:08.308][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:08.350][Warn][1][107][11] RTMP redirect 192.168.0.59:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:08.350][Trace][1][109] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:08.352][Trace][1][107] complex handshake success.
[2019-11-30 06:24:08.352][Trace][1][109] complex handshake success
[2019-11-30 06:24:08.392][Trace][1][109] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:08.392][Trace][1][109] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:08.432][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:08.432][Trace][1][109] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:08.432][Trace][1][109] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:08.432][Trace][1][109] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=1, source_id=107[107]
[2019-11-30 06:24:08.432][Trace][1][109] dispatch cached gop success. count=0, duration=-1
[2019-11-30 06:24:08.432][Trace][1][109] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:08.432][Trace][1][109] set fd=10, SO_SNDBUF=2626560=>175000, buffer=350ms
[2019-11-30 06:24:08.432][Trace][1][109] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:13.474][Warn][1][107][62] EdgeIngester: Ignore error, code=1011 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : timeout 5000 ms
thread #107: ingest() [src/app/srs_app_edge.cpp:315][errno=62]
thread #107: recv_message() [src/protocol/srs_rtmp_stack.cpp:354][errno=62]
thread #107: recv_interlaced_message() [src/protocol/srs_rtmp_stack.cpp:877][errno=62]
thread #107: read_basic_header() [src/protocol/srs_rtmp_stack.cpp:972][errno=62]
thread #107: grow() [src/protocol/srs_protocol_stream.cpp:180][errno=62]
thread #107: read() [src/service/srs_service_st.cpp:463][errno=62]
[2019-11-30 06:24:16.475][Warn][1][109][104] client disconnect peer. ret=1007
[2019-11-30 06:24:16.479][Trace][1][107] complex handshake success.
[2019-11-30 06:24:16.520][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:16.561][Warn][1][107][11] RTMP redirect 192.168.0.59:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:16.562][Trace][1][110] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:16.564][Trace][1][107] complex handshake success.
[2019-11-30 06:24:16.564][Trace][1][110] complex handshake success
[2019-11-30 06:24:16.603][Trace][1][110] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:16.603][Trace][1][110] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:16.643][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:16.644][Trace][1][110] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:16.644][Trace][1][110] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:16.644][Trace][1][110] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=1, source_id=107[107]
[2019-11-30 06:24:16.644][Trace][1][110] dispatch cached gop success. count=0, duration=-1
[2019-11-30 06:24:16.644][Trace][1][110] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:16.644][Trace][1][110] set fd=10, SO_SNDBUF=2626560=>175000, buffer=350ms
[2019-11-30 06:24:16.644][Trace][1][110] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:16.644][Trace][1][110] -> PLA time=0, msgs=0, okbps=32,0,0, ikbps=29,0,0, mw=350
[2019-11-30 06:24:21.683][Warn][1][107][62] EdgeIngester: Ignore error, code=1011 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : timeout 5000 ms
thread #107: ingest() [src/app/srs_app_edge.cpp:315][errno=62]
thread #107: recv_message() [src/protocol/srs_rtmp_stack.cpp:354][errno=62]
thread #107: recv_interlaced_message() [src/protocol/srs_rtmp_stack.cpp:877][errno=62]
thread #107: read_basic_header() [src/protocol/srs_rtmp_stack.cpp:972][errno=62]
thread #107: grow() [src/protocol/srs_protocol_stream.cpp:180][errno=62]
thread #107: read() [src/service/srs_service_st.cpp:463][errno=62]
[2019-11-30 06:24:21.719][Trace][1][111] RTMP client ip=172.17.0.2, fd=11
[2019-11-30 06:24:21.721][Trace][1][111] complex handshake success
[2019-11-30 06:24:21.722][Trace][1][111] connect app, tcUrl=rtmp://192.168.0.61:1935/video, pageUrl=, swfUrl=, schema=rtmp, vhost=192.168.0.61, port=1935, app=video, args=null
[2019-11-30 06:24:21.801][Trace][1][111] ignore AMF0/AMF3 command message.
[2019-11-30 06:24:21.842][Trace][1][111] ignore AMF0/AMF3 command message.
[2019-11-30 06:24:21.842][Trace][1][111] client identified, type=Play, vhost=192.168.0.61, app=video, stream=test1, param=, duration=-1ms
[2019-11-30 06:24:21.842][Trace][1][111] connected stream, tcUrl=rtmp://192.168.0.61:1935/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=, args=null
[2019-11-30 06:24:21.842][Trace][1][111] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=1, source_id=-1[-1]
[2019-11-30 06:24:21.842][Trace][1][111] dispatch cached gop success. count=0, duration=0
[2019-11-30 06:24:21.842][Trace][1][111] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:21.842][Trace][1][111] ignore disabled exec for vhost=__defaultVhost__
[2019-11-30 06:24:21.842][Trace][1][111] set fd=11, SO_SNDBUF=87040=>175000, buffer=350ms
[2019-11-30 06:24:21.842][Trace][1][111] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:21.842][Trace][1][111] update source_id=112[112]
[2019-11-30 06:24:21.842][Trace][1][111] protocol in.buffer=3000, in.ack=2500000, out.ack=2500000, in.chunk=128, out.chunk=60000
[2019-11-30 06:24:21.845][Trace][1][112] complex handshake success.
[2019-11-30 06:24:21.846][Trace][1][112] connected, dsu=1
[2019-11-30 06:24:21.847][Trace][1][112] edge change from 100 to state 101 (pull).
[2019-11-30 06:24:21.887][Warn][1][112][11] RTMP redirect 192.168.0.60:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:21.888][Trace][1][113] RTMP client ip=172.17.0.2, fd=13
[2019-11-30 06:24:21.889][Trace][1][112] complex handshake success.
[2019-11-30 06:24:21.889][Trace][1][113] complex handshake success
[2019-11-30 06:24:21.928][Trace][1][113] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:21.928][Trace][1][113] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=112
[2019-11-30 06:24:21.968][Trace][1][112] connected, dsu=1
[2019-11-30 06:24:21.968][Trace][1][113] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test1, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:21.968][Trace][1][113] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:21.968][Trace][1][113] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=1, source_id=112[112]
[2019-11-30 06:24:21.968][Trace][1][113] dispatch cached gop success. count=0, duration=0
[2019-11-30 06:24:21.968][Trace][1][113] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:21.968][Trace][1][113] set fd=13, SO_SNDBUF=2626560=>175000, buffer=350ms
[2019-11-30 06:24:21.968][Trace][1][113] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:21.969][Trace][1][113] protocol in.buffer=1000, in.ack=2500000, out.ack=2500000, in.chunk=128, out.chunk=60000
[2019-11-30 06:24:22.008][Trace][1][112] got metadata, width=1272, height=694
[2019-11-30 06:24:22.008][Trace][1][112] protocol in.buffer=0, in.ack=2500000, out.ack=2500000, in.chunk=60000, out.chunk=60000
[2019-11-30 06:24:22.008][Trace][1][112] 7B audio sh, codec(10, profile=LC, 2channels, 0kbps, 44100HZ), flv(16bits, 2channels, 44100HZ)
[2019-11-30 06:24:22.008][Trace][1][112] 46B video sh, codec(7, profile=High, level=3.1, 1280x704, 0kbps, 0.0fps, 0.0s)
[2019-11-30 06:24:22.318][Trace][1][112] got metadata, width=1272, height=694
[2019-11-30 06:24:22.319][Trace][1][112] 7B audio sh, codec(10, profile=LC, 2channels, 0kbps, 44100HZ), flv(16bits, 2channels, 44100HZ)
[2019-11-30 06:24:22.319][Trace][1][112] 46B video sh, codec(7, profile=High, level=3.1, 1280x704, 0kbps, 0.0fps, 0.0s)
[2019-11-30 06:24:24.684][Warn][1][110][104] client disconnect peer. ret=1007
[2019-11-30 06:24:24.686][Trace][1][107] complex handshake success.
[2019-11-30 06:24:24.768][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:24.811][Warn][1][107][11] RTMP redirect 192.168.0.59:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:24.812][Trace][1][114] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:24.814][Trace][1][107] complex handshake success.
[2019-11-30 06:24:24.814][Trace][1][114] complex handshake success
[2019-11-30 06:24:24.853][Trace][1][114] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:24.853][Trace][1][114] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:24.893][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:24.893][Trace][1][114] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:24.893][Trace][1][114] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:24.893][Trace][1][114] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=1, source_id=107[107]
[2019-11-30 06:24:24.893][Trace][1][114] dispatch cached gop success. count=0, duration=-1
[2019-11-30 06:24:24.893][Trace][1][114] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:24.894][Trace][1][114] set fd=10, SO_SNDBUF=2626560=>175000, buffer=350ms
[2019-11-30 06:24:24.894][Trace][1][114] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:27.318][Warn][1][112][62] EdgeIngester: Ignore error, code=1011 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : timeout 5000 ms
thread #112: ingest() [src/app/srs_app_edge.cpp:315][errno=62]
thread #112: recv_message() [src/protocol/srs_rtmp_stack.cpp:354][errno=62]
thread #112: recv_interlaced_message() [src/protocol/srs_rtmp_stack.cpp:877][errno=62]
thread #112: read_basic_header() [src/protocol/srs_rtmp_stack.cpp:972][errno=62]
thread #112: grow() [src/protocol/srs_protocol_stream.cpp:180][errno=62]
thread #112: read() [src/service/srs_service_st.cpp:463][errno=62]
[2019-11-30 06:24:29.934][Warn][1][107][62] EdgeIngester: Ignore error, code=1011 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : timeout 5000 ms
thread #107: ingest() [src/app/srs_app_edge.cpp:315][errno=62]
thread #107: recv_message() [src/protocol/srs_rtmp_stack.cpp:354][errno=62]
thread #107: recv_interlaced_message() [src/protocol/srs_rtmp_stack.cpp:877][errno=62]
thread #107: read_basic_header() [src/protocol/srs_rtmp_stack.cpp:972][errno=62]
thread #107: grow() [src/protocol/srs_protocol_stream.cpp:180][errno=62]
thread #107: read() [src/service/srs_service_st.cpp:463][errno=62]
[2019-11-30 06:24:30.319][Warn][1][113][104] client disconnect peer. ret=1007
[2019-11-30 06:24:30.322][Trace][1][112] complex handshake success.
[2019-11-30 06:24:30.402][Trace][1][112] connected, dsu=1
[2019-11-30 06:24:30.445][Warn][1][112][11] RTMP redirect 192.168.0.60:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:30.445][Trace][1][115] RTMP client ip=172.17.0.2, fd=13
[2019-11-30 06:24:30.447][Trace][1][112] complex handshake success.
[2019-11-30 06:24:30.447][Trace][1][115] complex handshake success
[2019-11-30 06:24:30.486][Trace][1][115] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:30.486][Trace][1][115] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=112
[2019-11-30 06:24:30.526][Trace][1][112] connected, dsu=1
[2019-11-30 06:24:30.526][Trace][1][115] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test1, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:30.527][Trace][1][115] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:30.527][Trace][1][115] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=1, source_id=112[112]
[2019-11-30 06:24:30.527][Trace][1][115] dispatch cached gop success. count=0, duration=0
[2019-11-30 06:24:30.527][Trace][1][115] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:30.527][Trace][1][115] set fd=13, SO_SNDBUF=2626560=>175000, buffer=350ms
[2019-11-30 06:24:30.527][Trace][1][115] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:30.527][Trace][1][115] protocol in.buffer=1000, in.ack=2500000, out.ack=2500000, in.chunk=128, out.chunk=60000
[2019-11-30 06:24:30.566][Trace][1][112] got metadata, width=1272, height=694
[2019-11-30 06:24:30.566][Trace][1][112] protocol in.buffer=0, in.ack=2500000, out.ack=2500000, in.chunk=60000, out.chunk=60000
[2019-11-30 06:24:30.566][Trace][1][112] 7B audio sh, codec(10, profile=LC, 2channels, 0kbps, 44100HZ), flv(16bits, 2channels, 44100HZ)
[2019-11-30 06:24:30.566][Trace][1][112] 46B video sh, codec(7, profile=High, level=3.1, 1280x704, 0kbps, 0.0fps, 0.0s)
[2019-11-30 06:24:30.877][Trace][1][112] got metadata, width=1272, height=694
[2019-11-30 06:24:30.877][Trace][1][112] 7B audio sh, codec(10, profile=LC, 2channels, 0kbps, 44100HZ), flv(16bits, 2channels, 44100HZ)
[2019-11-30 06:24:30.877][Trace][1][112] 46B video sh, codec(7, profile=High, level=3.1, 1280x704, 0kbps, 0.0fps, 0.0s)
[2019-11-30 06:24:32.934][Warn][1][114][104] client disconnect peer. ret=1007
[2019-11-30 06:24:32.938][Trace][1][107] complex handshake success.
[2019-11-30 06:24:33.020][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:33.063][Warn][1][107][11] RTMP redirect 192.168.0.59:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:33.063][Trace][1][116] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:33.065][Trace][1][107] complex handshake success.
[2019-11-30 06:24:33.065][Trace][1][116] complex handshake success
[2019-11-30 06:24:33.104][Trace][1][116] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:33.104][Trace][1][116] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:33.144][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:33.144][Trace][1][116] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:33.144][Trace][1][116] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:33.144][Trace][1][116] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=1, source_id=107[107]
[2019-11-30 06:24:33.144][Trace][1][116] dispatch cached gop success. count=0, duration=-1
[2019-11-30 06:24:33.144][Trace][1][116] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:33.145][Trace][1][116] set fd=10, SO_SNDBUF=2626560=>175000, buffer=350ms
[2019-11-30 06:24:33.145][Trace][1][116] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:35.878][Warn][1][112][62] EdgeIngester: Ignore error, code=1011 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : timeout 5000 ms
thread #112: ingest() [src/app/srs_app_edge.cpp:315][errno=62]
thread #112: recv_message() [src/protocol/srs_rtmp_stack.cpp:354][errno=62]
thread #112: recv_interlaced_message() [src/protocol/srs_rtmp_stack.cpp:877][errno=62]
thread #112: read_basic_header() [src/protocol/srs_rtmp_stack.cpp:972][errno=62]
thread #112: grow() [src/protocol/srs_protocol_stream.cpp:180][errno=62]
thread #112: read() [src/service/srs_service_st.cpp:463][errno=62]
[2019-11-30 06:24:38.185][Warn][1][107][62] EdgeIngester: Ignore error, code=1011 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : timeout 5000 ms
thread #107: ingest() [src/app/srs_app_edge.cpp:315][errno=62]
thread #107: recv_message() [src/protocol/srs_rtmp_stack.cpp:354][errno=62]
thread #107: recv_interlaced_message() [src/protocol/srs_rtmp_stack.cpp:877][errno=62]
thread #107: read_basic_header() [src/protocol/srs_rtmp_stack.cpp:972][errno=62]
thread #107: grow() [src/protocol/srs_protocol_stream.cpp:180][errno=62]
thread #107: read() [src/service/srs_service_st.cpp:463][errno=62]
[2019-11-30 06:24:38.879][Warn][1][115][104] client disconnect peer. ret=1007
[2019-11-30 06:24:38.883][Trace][1][112] complex handshake success.
[2019-11-30 06:24:38.965][Trace][1][112] connected, dsu=1
[2019-11-30 06:24:39.007][Warn][1][112][11] RTMP redirect 192.168.0.60:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:39.007][Trace][1][117] RTMP client ip=172.17.0.2, fd=13
[2019-11-30 06:24:39.008][Trace][1][112] complex handshake success.
[2019-11-30 06:24:39.009][Trace][1][117] complex handshake success
[2019-11-30 06:24:39.048][Trace][1][117] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:39.048][Trace][1][117] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=112
[2019-11-30 06:24:39.088][Trace][1][112] connected, dsu=1
[2019-11-30 06:24:39.089][Trace][1][117] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test1, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:39.089][Trace][1][117] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test1, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:39.089][Trace][1][117] source url=/video/test1, ip=172.17.0.2, cache=1, is_edge=1, source_id=112[112]
[2019-11-30 06:24:39.089][Trace][1][117] dispatch cached gop success. count=0, duration=0
[2019-11-30 06:24:39.089][Trace][1][117] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:39.089][Trace][1][117] set fd=13, SO_SNDBUF=2626560=>175000, buffer=350ms
[2019-11-30 06:24:39.089][Trace][1][117] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:39.089][Trace][1][117] protocol in.buffer=1000, in.ack=2500000, out.ack=2500000, in.chunk=128, out.chunk=60000
[2019-11-30 06:24:39.128][Trace][1][112] got metadata, width=1272, height=694
[2019-11-30 06:24:39.128][Trace][1][112] protocol in.buffer=0, in.ack=2500000, out.ack=2500000, in.chunk=60000, out.chunk=60000
[2019-11-30 06:24:39.128][Trace][1][112] 7B audio sh, codec(10, profile=LC, 2channels, 0kbps, 44100HZ), flv(16bits, 2channels, 44100HZ)
[2019-11-30 06:24:39.128][Trace][1][112] 46B video sh, codec(7, profile=High, level=3.1, 1280x704, 0kbps, 0.0fps, 0.0s)
[2019-11-30 06:24:39.439][Trace][1][112] got metadata, width=1272, height=694
[2019-11-30 06:24:39.440][Trace][1][112] 7B audio sh, codec(10, profile=LC, 2channels, 0kbps, 44100HZ), flv(16bits, 2channels, 44100HZ)
[2019-11-30 06:24:39.440][Trace][1][112] 46B video sh, codec(7, profile=High, level=3.1, 1280x704, 0kbps, 0.0fps, 0.0s)
[2019-11-30 06:24:41.186][Warn][1][116][104] client disconnect peer. ret=1007
[2019-11-30 06:24:41.188][Trace][1][107] complex handshake success.
[2019-11-30 06:24:41.269][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:41.312][Warn][1][107][11] RTMP redirect 192.168.0.59:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:41.313][Trace][1][118] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:41.315][Trace][1][107] complex handshake success.
[2019-11-30 06:24:41.316][Trace][1][118] complex handshake success
[2019-11-30 06:24:41.355][Trace][1][118] connect app, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=172.17.0.2, port=1935, app=video, args=(obj)
[2019-11-30 06:24:41.355][Trace][1][118] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:41.395][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:41.396][Trace][1][118] client identified, type=Play, vhost=172.17.0.2, app=video, stream=test2, param=?&vhost=172.17.0.2, duration=-1ms
[2019-11-30 06:24:41.396][Trace][1][118] connected stream, tcUrl=rtmp://172.17.0.2/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=172.17.0.2, args=(obj)
[2019-11-30 06:24:41.396][Trace][1][118] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=1, source_id=107[107]
[2019-11-30 06:24:41.396][Trace][1][118] dispatch cached gop success. count=0, duration=-1
[2019-11-30 06:24:41.396][Trace][1][118] create consumer, queue_size=0.00, jitter=30000000
[2019-11-30 06:24:41.396][Trace][1][118] set fd=10, SO_SNDBUF=2626560=>175000, buffer=350ms
[2019-11-30 06:24:41.396][Trace][1][118] start play smi=0ms, mw_sleep=350, mw_enabled=1, realtime=0, tcp_nodelay=0
[2019-11-30 06:24:41.396][Trace][1][118] -> PLA time=0, msgs=0, okbps=0,0,0, ikbps=0,0,0, mw=350
[2019-11-30 06:24:44.440][Warn][1][112][62] EdgeIngester: Ignore error, code=1011 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : timeout 5000 ms
thread #112: ingest() [src/app/srs_app_edge.cpp:315][errno=62]
thread #112: recv_message() [src/protocol/srs_rtmp_stack.cpp:354][errno=62]
thread #112: recv_interlaced_message() [src/protocol/srs_rtmp_stack.cpp:877][errno=62]
thread #112: read_basic_header() [src/protocol/srs_rtmp_stack.cpp:972][errno=62]
thread #112: grow() [src/protocol/srs_protocol_stream.cpp:180][errno=62]
thread #112: read() [src/service/srs_service_st.cpp:463][errno=62]
[END] 2019/11/30 14:24:46
The log of Edge has a warning:
[2019-11-30 06:24:00.139][Warn][1][107][11] RTMP redirect 192.168.0.59:1935 to 172.17.0.2:1935 stream=
In fact, the IP assigned by Docker for all three servers is this:
edge.log:[2019-11-30 06:23:34.564][Warn][1][0][0] stats network use index=0, ip=172.17.0.2
serverA.log:[2019-11-30 06:23:30.235][Warn][1][0][0] stats network use index=0, ip=172.17.0.2
serverB.log:[2019-11-30 06:23:32.514][Warn][1][0][0] stats network use index=0, ip=172.17.0.2
This will result in connecting to oneself, causing a timeout of 5000ms with no data.
107 is the origin link.
[2019-11-30 06:24:00.012][Trace][1][106] update source_id=107[107]
[2019-11-30 06:24:00.016][Trace][1][107] complex handshake success.
[2019-11-30 06:24:00.097][Trace][1][107] connected, dsu=1
[2019-11-30 06:24:00.098][Trace][1][107] edge change from 100 to state 101 (pull).
[2019-11-30 06:24:00.139][Warn][1][107][11] RTMP redirect 192.168.0.59:1935 to 172.17.0.2:1935 stream=
[2019-11-30 06:24:05.262][Warn][1][107][62] EdgeIngester: Ignore error, code=1011 : recv message : recv interlaced message : read basic header : basic header requires 1 bytes : read bytes : timeout 5000 ms
It is connected to serverA. The logs are as follows:
[2019-11-30 06:24:00.013][Trace][1][107] RTMP client ip=172.17.0.2, fd=10
[2019-11-30 06:24:00.016][Trace][1][107] complex handshake success
[2019-11-30 06:24:00.057][Trace][1][107] connect app, tcUrl=rtmp://192.168.0.60/video, pageUrl=, swfUrl=, schema=rtmp, vhost=192.168.0.60, port=1935, app=video, args=(obj)
[2019-11-30 06:24:00.057][Trace][1][107] edge-srs ip=172.17.0.2, version=3.0.60, pid=1, id=107
[2019-11-30 06:24:00.099][Trace][1][107] client identified, type=Play, vhost=192.168.0.60, app=video, stream=test2, param=?&vhost=192.168.0.60, duration=-1ms
[2019-11-30 06:24:00.099][Trace][1][107] connected stream, tcUrl=rtmp://192.168.0.60/video, pageUrl=, swfUrl=, schema=rtmp, vhost=__defaultVhost__, port=1935, app=video, stream=test2, param=?&vhost=192.168.0.60, args=(obj)
[2019-11-30 06:24:00.099][Trace][1][107] source url=/video/test2, ip=172.17.0.2, cache=1, is_edge=0, source_id=-1[-1]
[2019-11-30 06:24:00.102][Trace][1][107] ignore private address: 172.17.0.2
[2019-11-30 06:24:00.102][Warn][1][107][11] use private address as ip: 172.17.0.2
[2019-11-30 06:24:00.102][Trace][1][107] http: cluster redirect 172.17.0.2:1935 ok, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=192.168.0.60&app=video&stream=test2, response={"code":0,"data":{"query":{"ip":"192.168.0.60","vhost":"__defaultVhost__","app":"video","stream":"test2"},"origin":{"ip":"172.17.0.2","port":1935,"vhost":"__defaultVhost__","api":"172.17.0.2:9090","routers":["172.17.0.2:9090"]}}}
[2019-11-30 06:24:00.102][Trace][1][107] rtmp: redirect in cluster, from=192.168.0.60:1935, target=172.17.0.2:1935, url=http://192.168.0.59:9090/api/v1/clusters?vhost=__defaultVhost__&ip=192.168.0.60&app=video&stream=test2
[2019-11-30 06:24:00.140][Trace][1][107] client finished.
The address returned by serverA is this docker IP, which is 172.17.0.2.
In other words:
There are two remaining issues to investigate:
TRANS_BY_GPT3
Only one video can be played, which is ServA's. The address returned by ServA for ServB is incorrect, so it cannot be played.
The reason why the problem could not be reproduced is because the docker containers were deployed on the same machine, which means that the containers can communicate with each other. In other words, all the docker containers are in the same internal network, so the problem could not be reproduced.
TRANS_BY_GPT3
@zynfly You're right, I confirmed the first issue, srs-docker also has a problem.
107 is the origin link, accessing serverA, and being redirected to serverB (172.17.0.4).
[2019-11-30 09:50:32.769][Trace][1][107] complex handshake success.
[2019-11-30 09:50:32.830][Trace][1][107] connected, dsu=1
[2019-11-30 09:50:32.832][Trace][1][107] edge change from 100 to state 101 (pull).
[2019-11-30 09:50:32.890][Warn][1][107][11] RTMP redirect docker:19351 to 172.17.0.4:19351 stream=
serverA returns the docker IP of serverB (172.17.0.4).
[2019-11-30 09:50:32.838][Warn][1][105][11] use private address as ip: 172.17.0.2
[2019-11-30 09:50:32.838][Trace][1][105] http: cluster redirect 172.17.0.4:19351 ok, url=http://docker:9091/api/v1/clusters?vhost=__defaultVhost__&ip=docker&app=live&stream=livestream, response={"code":0,"data":{"query":{"ip":"docker","vhost":"__defaultVhost__","app":"live","stream":"livestream"},"origin":{"ip":"172.17.0.4","port":19351,"vhost":"__defaultVhost__","api":"172.17.0.4:9091","routers":["172.17.0.4:9091"]}}}
[2019-11-30 09:50:32.838][Trace][1][105] rtmp: redirect in cluster, from=docker:19350, target=172.17.0.4:19351, url=http://docker:9091/api/v1/clusters?vhost=__defaultVhost__&ip=docker&app=live&stream=livestream
However, edge and serverB are running in the same docker, as @zynfly mentioned, so they can communicate with each other.
TRANS_BY_GPT3
Second question, from the logs, it appears that there has never been a successful playback of video/test2.
TRANS_BY_GPT3
When the origin server cluster redirects, it returns the IP to the client (usually the edge) in the following order:
For example, when the stream is on server B and the edge accesses server A, server A will return server B's address to the edge through RTMP Redirect.
First, check the "listen" configuration in the server B configuration file. If it is not set to "localhost" or "loopback," then use this address. For example: listen 182.92.80.26:1935
means that this IP should be used. By default, it is usually set as listen 1935
, which actually means listen 0.0.0.0:1935
, and it will ignore this IP.
Server A's upstream cluster configuration includes server B's IP. When server A accesses server B, server B's IP is included in the request. For example, the URL for server A accessing server B could be http://127.0.0.1:9090/api/v1/clusters?vhost=__defaultVhost__&ip=192.168.0.10&app=live&stream=livestream&coworker=106.19.31.10
, where the "coworker" parameter is 106.19.31.10
, and this IP is used as the server B's service IP. This IP can be accessed by other upstream servers and potentially by the edge as well.
Use the IP discovered by server B itself. This is configured through the stats{network 0;}
configuration and refers to the first network interface card (NIC). Usually, it will prioritize ignoring the "lo" (loopback) NIC unless there are no other NICs available. Generally, this IP is also usable, but sometimes, for example, when running in Docker, it may be an unreachable NIC.
The following are definitions of "localhost" and "loopback":
#define SRS_CONSTS_LOCALHOST "127.0.0.1"
#define SRS_CONSTS_LOOPBACK "0.0.0.0"
#define SRS_CONSTS_LOOPBACK6 "::"
TRANS_BY_GPT3
In Docker or NAT network environment, there are no accessible addresses. All network card addresses are internal addresses and cannot be accessed externally. In Docker environment, the accessible IP should be the host machine IP, while in NAT environment, the accessible IP is the gateway IP.
TRANS_BY_GPT3
@zynfly, what you said is the second situation mentioned above. You can read it. The rules mentioned above can support your requirements, as well as support having a direct public IP, which means a non-docker situation.
TRANS_BY_GPT3
Docker image: https://github.com/ossrs/srs-docker#aliyun
Fixed in v3.0-a3, 3.0.67
Redirect edge to serverB (19351) on serverB.
[2019-11-30 21:37:25.968][Trace][1][354] http: cluster redirect docker:19350 ok, url=http://docker:9090/api/v1/clusters?vhost=__defaultVhost__&ip=docker&app=live&stream=livestream, response={"code":0,"data":{"query":{"ip":"docker","vhost":"__defaultVhost__","app":"live","stream":"livestream"},"origin":{"ip":"docker","port":19350,"vhost":"__defaultVhost__","api":"docker:9090","routers":["docker:9090"]}}}
The edge first connects to serverA (172.17.0.3:19350), and then connects to serverB (172.17.0.2:19351).
[2019-11-30 21:37:25.960][Trace][1][235] connected, version=3.0.66.0, ip=172.17.0.3, pid=1, id=354, dsu=1
[2019-11-30 21:37:25.962][Trace][1][235] edge change from 100 to state 101 (pull).
[2019-11-30 21:37:26.013][Warn][1][235][11] RTMP redirect docker:19350 to docker:19350 stream=
[2019-11-30 21:37:26.019][Trace][1][235] complex handshake success.
[2019-11-30 21:37:26.070][Trace][1][235] connected, version=3.0.66.0, ip=172.17.0.2, pid=1, id=1043, dsu=1
Verification passed.
TRANS_BY_GPT3
Regarding the storage issue of the origin server cluster, please refer to: https://github.com/ossrs/srs/issues/1595#issuecomment-586550583
Regarding the API issue of the origin server cluster, please refer to: https://github.com/ossrs/srs/issues/1607#issuecomment-586549464
TRANS_BY_GPT3
Regarding the storage issue of the origin server cluster, please refer to: https://github.com/ossrs/srs/issues/1595#issuecomment-586550583
Regarding the API issue of the origin server cluster, please refer to: https://github.com/ossrs/srs/issues/1607#issuecomment-586549464
TRANS_BY_GPT3
Overview
Deployment of Two Origin Server Clusters and an Edge Server Using Docker
Deploy two origin server clusters and an edge server using Docker. The two streaming sources will be pushed to the two origin servers respectively, and VLC will play the RTMP stream from the edge server.
Question
Occasionally, we can play together, but most of the time we can only play videos from one source site.
Deployment Environment
Origin Server, EDGE:
CentOS 7 (virtual machine), pulled SRS 3.0 from Docker Hub.
Configuration file for origin server A:
Configuration file for origin server B:
Edge configuration file:
Live streaming:
Windows 10 (Virtual Machine), OBS Studio 24.0.3,
Streaming test1 configuration:
Streaming test2 configuration:
Player:
win10 (local), VLC media player 3.0.8
test1 playback:
test2 playback:
TRANS_BY_GPT3