Im using 1.7.2 Wowza, its setup in a internal lan with squid proxy enabled. Users have reported that the video stops after some time. RTMP doesnt work at all, RTMPT does work, but as I said the videos stop after a few minutes, any general troubleshooting tips that I may apply?
Putting squid in front of Wowza is probably not a good idea. RTMPT is not like other protocols. Each chunk is unique for each client. It is most likely causing the problem.
Charlie
At this time we do not have the resources to investigate this configuration. You are welcome to try other proxying solutions to see if one works for you but we do not have the resources to debug any issue encountered due to proxying.
Charlie
This should generate debug logs. Not sure if it is going to help.
Charlie
We just don’t have the resources to provide more assistance on this matter.
Charlie
Yes, that turns on DEBUG logging.
Richard
Hi Charlie,
I am from the same company so I am adding info about exactly the same problem.
In fact, when playing live streaming via RTMPT and having squid in between the player and wowza I have discovered that squid at some random point encounters a “Zero sized Response” error while trying to proxy an RTMPT idle request. This means that it has tryed and re-tryed to forward the request to wowza but received no data from it.
Squid describes this error here:
http://man.chinaunix.net/newsoft/squid/Squid_FAQ/FAQ-11.html#ss11.51
So, because of this error, for this RTMPT idle request, squid returns a 503 Service Unavailable to the player, and the player in return closes the RTMPT connection and stops streaming.
Also, in wowza logs I have found many similarly named errors, can these be related to why squid receives no data when making request to wowza?
Part of the log included below…
I think squid may well be responsible for this but I would like to understand why it happends and maybe try to configure squid in some way to avoid this.
Please advise me on how to provide a more detailed debug info for this problem.
Wowza LOG:
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.1 – - - - - - Zero sized function (client): type:20 size:0 index:275
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.1 – - - - - - Zero sized function (client): type:20 size:0 index:617
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.1 – - - - - - Zero sized function (client): type:20 size:0 index:790
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.1 – - - - - - Zero sized function (client): type:20 size:0 index:963
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.1 – - - - - - Zero sized function (client): type:20 size:0 index:1130
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.1 – - - - - - Zero sized function (client): type:20 size:0 index:1131
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.1 – - - - - - Zero sized function (client): type:20 size:0 index:1132
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.1 – - - - - - Zero sized function (client): type:20 size:0 index:1133
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1134
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1135
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1136
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1137
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1138
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1139
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1140
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1141
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1142
ERROR server comment 2010-03-17 09:19:46 - - - - - 4905545.101 – - - - - - Zero sized function (client): type:20 size:0 index:1143
Thanx
best regards
Haris
Hi again,
We are in no position to change the proxy, because this the proxy of our client. I would like to investigate a little bit more myself…
Please tell me if I have enabled all possible DEBUG info for RTMPT?
Here is my log4j.properties:
log4j.rootCategory=DEBUG, stdout, serverAccess, serverError
The logging context is
#log4j.logger.[vhost].[application].[appInstance]
Field list
#date,time,tz,x-event,x-category,x-severity,x-status,x-ctx,x-comment,x-vhost,x-app,x-appinst,x-duration,s-ip,s-po
rt,s-uri,c-ip,c-proto,c-referrer,c-user-agent,c-client-id,cs-bytes,sc-bytes,x-stream-id,x-spos,cs-stream-bytes,sc
-stream-bytes,x-sname,x-sname-query,x-file-name,x-file-ext,x-file-size,x-file-length,x-suri,x-suri-stem,x-suri-qu
ery,cs-uri-stem,cs-uri-query
Category list
#server,vhost,application,session,stream,rtsp
Event list
#connect-pending,connect,disconnect,publish,unpublish,play,pause,setbuffertime,create,destroy,setstreamtype,unpau
se,seek,stop,record,recordstop,server-start,server-stop,vhost-start,vhost-stop,app-start,app-stop,comment,announc
e
To force UTF-8 encoding of log values add the following property to the appender definition (where [appender] i
s the name of the appender such as “stdout” or “R”)
#log4j.appender.[appender].encoding=UTF-8
Console appender
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=com.wowza.wms.logging.ECLFPatternLayout
log4j.appender.stdout.layout.Fields=x-severity,x-category,x-event,x-ctx,x-comment
log4j.appender.stdout.layout.OutputHeader=false
log4j.appender.stdout.layout.QuoteFields=false
log4j.appender.stdout.layout.Delimeter=space
Access appender
log4j.appender.serverAccess=org.apache.log4j.DailyRollingFileAppender
log4j.appender.serverAccess.DatePattern=’.'yyyy-MM-dd
log4j.appender.serverAccess.File=${com.wowza.wms.ConfigHome}/logs/stats.log
log4j.appender.serverAccess.layout=com.wowza.wms.logging.ECLFPatternLayout
log4j.appender.serverAccess.layout.Fields=c-ip,date,time,x-sname,x-status,c-proto,sc-stream-bytes
log4j.appender.serverAccess.layout.OutputHeader=true
log4j.appender.serverAccess.layout.QuoteFields=false
log4j.appender.serverAccess.layout.Delimeter=tab
log4j.appender.serverAccess.layout.CategoryInclude=stream
log4j.appender.serverAccess.layout.EventInclude=destroy
Error appender
log4j.appender.serverError=org.apache.log4j.DailyRollingFileAppender
log4j.appender.serverError.DatePattern=’.'yyyy-MM-dd
log4j.appender.serverError.File=${com.wowza.wms.ConfigHome}/logs/wowzamediaserverpro_error.log
log4j.appender.serverError.layout=com.wowza.wms.logging.ECLFPatternLayout
log4j.appender.serverError.layout.Fields=x-severity,x-category,x-event;date,time,c-client-id,c-ip,c-port,cs-bytes
,sc-bytes,x-duration,x-sname,x-stream-id,sc-stream-bytes,cs-stream-bytes,x-file-size,x-file-length,x-ctx,x-commen
t
log4j.appender.serverError.layout.OutputHeader=true
log4j.appender.serverError.layout.QuoteFields=false
log4j.appender.serverError.layout.Delimeter=tab
log4j.appender.serverError.Threshold=DEBUG
Statistics appender (to use this appender add “serverStats” to the list of appenders in the first line of this
file)
log4j.appender.serverStats=org.apache.log4j.DailyRollingFileAppender
log4j.appender.serverStats.DatePattern=’.'yyyy-MM-dd
log4j.appender.serverStats.File=${com.wowza.wms.ConfigHome}/logs/wowzamediaserverpro_stats.log
log4j.appender.serverStats.layout=com.wowza.wms.logging.ECLFPatternLayout
log4j.appender.serverStats.layout.Fields=x-severity,x-category,x-event;date,time,c-client-id,c-ip,c-port,cs-bytes
,sc-bytes,x-duration,x-sname,x-stream-id,sc-stream-bytes,cs-stream-bytes,x-file-size,x-file-length,x-ctx,x-commen
t
log4j.appender.serverStats.layout.OutputHeader=true
log4j.appender.serverStats.layout.QuoteFields=false
log4j.appender.serverStats.layout.Delimeter=tab
log4j.appender.serverStats.layout.CategoryInclude=session,stream
log4j.appender.serverStats.layout.EventExclude=comment
In fact, it does not help. There is not much information of this in the log.
Does wowza log anywhere the single RTMPT HTTP requests (idle, send, close …)?
The problem was that, after a while, when streaming via rtmpt, for some reason, squid timed out connecting during one of the many rtmpt requests and probably by default behaviour returned “HTTP Error 503 Service unavailable” back to the flash player. Flash player then reacted by simply stopping the stream.
With the newest stable version of squid the problem does not appear anymore.
regards
Haris