Forum

Diagnosing CDN 504 errors on live HLS

Shane 2021-09-23 17:01:29 UTC in Nimble Streamer

We use Nimble to take RTMP to live HLS, and Nimble is setup as CDN origin.

When we experience high viewer spikes, the CDN reports 504 Gateway Timeout errors on the TS chunks.

Odd thing is, there is no unusual spike in bandwidth, CPU or Memory on the Nimble server (all within very acceptable limits), and no errors in Nimble log.

Any suggestions on what to look for to diagnose this issue? The CDN is pointing the finger at our origin.

Thanks

Sergei 2021-09-23 23:26:03 UTC 

Hello, Shane.

504 means Nimble could not be reached by CDN, this is either a high load to Nimble or some networking restriction or issues.

Just a guess, but does your hosting provider can limit connections to a server if there're too many of them? Have you tried to make multiple requests (e.g. by curl) to your server directly as 504 occurred?
Please enable access.log (as described in the below documentation page) to check if CDNs requests are reaching you Nimble at all.
https://blog.wmspanel.com/2016/08/logging-nimble-streamer.html

If you want us to check the issue, please file a ticket at wmspanel.com/help with more technical details.
Please name your server and stream you have an issue with, specify the exact time the issue happens, and attach CDNs and Nimble's log files for the specified time. (access.log and nimble.log)

Thank you.

Shane 2021-09-24 02:31:52 UTC 

OK, will do that and investigate a little further. Didn't consider throttling by provider - it's on a DigitalOcean instance. But bandwidth is low (25 Mbps or so). Since (theoretically) those viewers are hitting the CDN and not origin, it shouldn't be an issue of connection numbers.

However, I just looked at my CDN edge rules and for some reason I have it set to always request the m3u8's from origin and not cache, which would definitely spike connections with little bandwidth). Not sure why we have it setup that way. It should be fine to cache the m3u8's on the CDN too, correct?

Shane 2021-09-24 02:53:56 UTC 

At least for a short time (5 seconds?)...one of the two streams is DVR, the other is just straight live. Would caching playlists on the DVR channel cause issues? Thanks

Sergei 2021-09-24 06:42:55 UTC 

It looks like we already discussed playlist caching in your previous tickets. Please continue this thread via wmspanel.com/help, as we cannot share sensitive information about your company set up there.

Thank you.

Post a reply


Post a new question

Categories:

Tags:

nimbleNimble StreamerHLSFAQDVRnimble streamerhlsRTMPSRTABRcacheAPIrtmpwmsauthNimbletranscodersrtapidvrffmpegVODudpRTSPsldpfailoverDASHwmspanelyoutubevodstreamingrtspSLDPUDPmp4paywallabrDispersavideoaudiosslandroidmulticastLarixsubtitleslivelivestreamingWMSAuthMPEG-DASHpay-per-viewgeoMPEG-TSdashstreameredgebandwidthWMSPanelthumbnailWindowsencryptionhttpsplaylistwhite labelconfigsmilFFMPEGerrorCORSperformancechunksraspberry pire-streamingmpeg-dashpublish controlcorscloudfrontDRMrepublishingRepublishingvlcS3advertisinguser agentNDIadvertizerristrules.confipv6MPEGTSFastSpringRAMwms panelRecordingFMLEfileVATcrossdomainSMILmpegtsaespushakamaiPullserverswowzamobilecodecSSLbalancedrmchromecastTranscodem3u8TranscoderWowzaIDbugreportingconfigurationdownloadsnapshotawsAndroidnimblestreamerdomainLarix BroadcasterraspianloopAWSscte35originCDNamazonstreamroutesupdateipplaylist_dvrVidillionHttpslarix broadcasterissuechunkmpeg-tsEncoderIPsecurityVLCscte-35UInimble webcam html5Registration Issuedirect link32-bit Windowstwitchcache_controlitworkmecudalive abr support mpeg-dashwmspanelapibeirutreloadWWDCdubaideep statsCentOS v6.4logIIS Smooth StreamingcloudmediaAbrHTTPSHot-linking protectionHDSvaddioeventalertsjwplayer websitewhmcsbaselinetimelineVaddioAV BridgePI3 UbuntuAuthentication in HLSPi4view timeNimble Streamer APIpriceresourcelimitOld logsCloud Storageinterfacesscreencastencrytpionloadbalancingmetadatamod_rewriteprofilelarix abrattaching domainsgbpsAxisID3 tagscontainerwmsauthsignhigh*hds streamsdpshoutcastciscolocalWMSCONFIG_HOMEdatmessage.net hotlinkcostrestreamRTMP republishresumertmp abranalisysgentoo install server nimblehls restreamingtranscoding using NvidiaPublic IpPaywall AuthdocumentationofflineNimble streamer upgradeniblerconcurrent-connectionsTrancoderVideo Playertransocding republishingdecoderServer-sideAliaslost trafficstoppedNimble Streamer versionicecast urlpay per viewchangedvr_archivesmpeg dashamfLarix Grovenginx rtmp nimbleTCOobswildcardRaspian BusterexportopenssllebanonlocationmanifestMP4 not playedspaceonSteam stopped workingHLS vodseekingExpression Encoderanalyticsapplicationpaywallimuxamazon web servicenginxPlayReadyHLS Playerdvr stream twiceDASH PlayerrepublishjpegAXVVGhot-linkblocknvencdebian7brandingscreen freezecan't registerlive video on demandtrialbandwithmicrosoft streamMP4servererrorsrocksoftlog traffic statsno WMSPanelLarge DVR filesprivate networkaccuracylive videoTelegraminterleavingSLDP PLayersourcemac osx installwotermarkLive StreamingnimblesessionidFFmpegmultiple originsABR DASHprogressive downloadvimeohelp errorvideo stopload balancezabbixheaderstreamscache expirylog nimble analysertmp playbackcdnvsomlive streamAdsvideojsViewer StatswmsattachmentHEVCrecordingbitrate#restreamvod no soundconcurrent connectionDelaympeg2tsdvr streamconnectivityUbuntu 20 ARM - AWSunique visitoradaptiveAV1 codecServer-Side-Task-ControlJWPLAYERNGINX-RTMPdisk migrationdvr on wmspanelscreen capturestereo to monoWidevineaes encryptionFairplay4Kcrossdomain more then 1 domainsubscriptionnot foundCPU LoadcpuWMSPanel settingslive pull settingsABR HLS Bitratespullrtmp for YouTubeAS3install players setup ready to goDVRSettingstwitch larix broadcaster androidbuttAWS 3AppleDelete recordsicecast metadatanimble streamer web server php script pageautomationControl APIloggingnimble streamer vod hls transmuxingvideo loopLive streaminglearnerstarttime duration seekpointCross Domainrebootinsert logoadd_chunk failedPost processingfake extensionDVRStreamspremium featuremonitordroppingmobile app live streamingProgressiveapi accessDeep statsoutrateudp streamingloadbalancericecastweb playerUbuntu artful 17.10Transcoder MPEG DASHinvalidMPEG DASHstatus:errorcontent-dispositionAVCaptureMovieFileOutputblock downloadNimble Serverdvr streamslivestreamStreaming routeHotlinking ProtectionfacebookSecurityNimble CapacityABR DVR problempaymentLive Switcherstatsnot to stealLive BroadcastMultiple Audio trackslow_bandwidthsecure streamingcontentRTMP Republishvp9addemandIOSThumbnailsserver incorrect timeLiveLIVEwmsAuthSignnimble streamer mpeg-ts multiple inputsLoad-BalancingsoundHLS Meta Tag editing.How to do live stream with multiple audio trackssaiDVR Setting limitthumbnail dvr-thumbnailreportsrmtpInterlaceno internettranscoder nimbleVideo cant be playedS3 AWSavoid refreshraspberrylivestreamintransocderPaywallstorage space availablediskautomateuser_agentcredentialspublish streamStream Delayhd25trafficAArch64dvr to livewebhooktranscodevbv-maxratedomain lockUsers limitoutputcloudflareVOD HLS streaming on public IPFailoverVR-360larixsctelivestream bitratedockerDVRRecordingAuthInvalid frame headerno soundincoming streamSubtitlesDVR SettingPORTGopdelaympeg4storagealias route.movhttp serverLatencya recordwirecastVP9buffering videoSO_RCVBUFfastspringNimble streamermp2 audioaliasdata slicesplayer sldplatencyno audiobufferdistributionQuickTimevideo streamingqataritworkscdnvideo.jscompatibility protocolsmultiplexCSSactionscript 3server ssl error3.6.1-1Centos 8dissapointmentpay-per-minuteTeradek Decoderubuntu 18Max connectionUDP Multicastincomingmulti-viewerrulesmanage_dvrhow-toError when installingaws amazonrestartFallbackhelpRIST BondingplayoutMPEG2 Videologo in streammultiple audio udphotlink protectionRaspberryPi4ultra low latencyserver ip21hls to multicast udpnoobSSL requestprogressivebroadcast videovideo audioSRT protocolsha265fallbackanalyseStreamIDprerollrtmp sldp nimblenimble on cloudRaspberrytasks-controlRTMP to SRTLinux4GNimble_Crushwebrtcartifactsrtsp push androidtuningWowza AgentRemote StorageSSAIvideo and audio not matchLarix broadcastergpu{stream}NetworkOBSfairplayNginxGoogle DriveHLS StreamingPIDurlnimble.confrtmp republishing transcodeIIS Media Servicstrackspeedup my videoiOSthumbnailsmultipointruleAmazonTVfiresubfolderTLSV 1.2 Certificatedynamic linksSnapshotsMPEG-Dashrtpnimble dvrBandwidthdurationYadifportsRokubroadcasterOSXmd5Nimble connectionsabr fallbackletsencryptnimble aliasesNimble StreamRAM LoadtranscodingdownTonyFFMPEG;RTMP;I/O errorhot linkingTRANSCODEgoogle cloud storagepricingHTML5 playerAddendaLL-HLSWMSAUTHLL-HLS DVRav1 codecconnectionsNimbleStreamermainmultistreamingmultipleRistbuildABR bitratesPacketizingcountrist set fecBroadcastSecureJetson NanoLarix Playerramdvbduplicatingadjustsoftware versionre-publishingSRT RTMPmultiple audio

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the Privacy Policy. If you want to know more or withdraw your consent to all or some of the cookies, please refer to the Privacy Policy.
By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to the use of cookies.