More use of subscriber logger when appropriate and an interface to get (#800)

This commit is contained in:
Raja Subramanian
2022-07-02 20:51:38 +05:30
committed by GitHub
parent 5a30f6ed87
commit 41c57f737c
4 changed files with 145 additions and 2 deletions
+14 -2
View File
@@ -262,7 +262,12 @@ func (t *MediaTrackSubscriptions) addSubscriber(sub types.LocalParticipant, wr *
downTrack.SeedForwarderState(forwarderState)
}
if err = wr.AddDownTrack(downTrack); err != nil {
t.params.Logger.Errorw("could not add down track", err, "participant", sub.Identity(), "pID", sub.ID())
sub.GetLogger().Errorw(
"could not add down track", err,
"publisher", subTrack.PublisherIdentity(),
"publisherID", subTrack.PublisherID(),
"trackID", trackID,
)
}
go subTrack.Bound()
@@ -508,6 +513,13 @@ func (t *MediaTrackSubscriptions) GetAllSubscribers() []livekit.ParticipantID {
return subs
}
func (t *MediaTrackSubscriptions) GetNumSubscribers() int {
t.subscribedTracksMu.RLock()
defer t.subscribedTracksMu.RUnlock()
return len(t.subscribedTracks)
}
func (t *MediaTrackSubscriptions) UpdateVideoLayers() {
for _, st := range t.getAllSubscribedTracks() {
st.UpdateVideoLayer()
@@ -562,7 +574,7 @@ func (t *MediaTrackSubscriptions) sendDownTrackBindingReports(sub types.LocalPar
i := 0
for {
if err := sub.SubscriberPC().WriteRTCP(batch); err != nil {
t.params.Logger.Errorw("could not write RTCP", err)
sub.GetLogger().Errorw("could not write RTCP", err)
return
}
if i > 5 {
+1
View File
@@ -297,6 +297,7 @@ type MediaTrack interface {
RemoveAllSubscribers(willBeResumed bool)
RevokeDisallowedSubscribers(allowedSubscriberIdentities []livekit.ParticipantIdentity) []livekit.ParticipantIdentity
GetAllSubscribers() []livekit.ParticipantID
GetNumSubscribers() int
// returns quality information that's appropriate for width & height
GetQualityForDimension(width, height uint32) livekit.VideoQuality
@@ -58,6 +58,16 @@ type FakeLocalMediaTrack struct {
getConnectionScoreReturnsOnCall map[int]struct {
result1 float32
}
GetNumSubscribersStub func() int
getNumSubscribersMutex sync.RWMutex
getNumSubscribersArgsForCall []struct {
}
getNumSubscribersReturns struct {
result1 int
}
getNumSubscribersReturnsOnCall map[int]struct {
result1 int
}
GetQualityForDimensionStub func(uint32, uint32) livekit.VideoQuality
getQualityForDimensionMutex sync.RWMutex
getQualityForDimensionArgsForCall []struct {
@@ -514,6 +524,59 @@ func (fake *FakeLocalMediaTrack) GetConnectionScoreReturnsOnCall(i int, result1
}{result1}
}
func (fake *FakeLocalMediaTrack) GetNumSubscribers() int {
fake.getNumSubscribersMutex.Lock()
ret, specificReturn := fake.getNumSubscribersReturnsOnCall[len(fake.getNumSubscribersArgsForCall)]
fake.getNumSubscribersArgsForCall = append(fake.getNumSubscribersArgsForCall, struct {
}{})
stub := fake.GetNumSubscribersStub
fakeReturns := fake.getNumSubscribersReturns
fake.recordInvocation("GetNumSubscribers", []interface{}{})
fake.getNumSubscribersMutex.Unlock()
if stub != nil {
return stub()
}
if specificReturn {
return ret.result1
}
return fakeReturns.result1
}
func (fake *FakeLocalMediaTrack) GetNumSubscribersCallCount() int {
fake.getNumSubscribersMutex.RLock()
defer fake.getNumSubscribersMutex.RUnlock()
return len(fake.getNumSubscribersArgsForCall)
}
func (fake *FakeLocalMediaTrack) GetNumSubscribersCalls(stub func() int) {
fake.getNumSubscribersMutex.Lock()
defer fake.getNumSubscribersMutex.Unlock()
fake.GetNumSubscribersStub = stub
}
func (fake *FakeLocalMediaTrack) GetNumSubscribersReturns(result1 int) {
fake.getNumSubscribersMutex.Lock()
defer fake.getNumSubscribersMutex.Unlock()
fake.GetNumSubscribersStub = nil
fake.getNumSubscribersReturns = struct {
result1 int
}{result1}
}
func (fake *FakeLocalMediaTrack) GetNumSubscribersReturnsOnCall(i int, result1 int) {
fake.getNumSubscribersMutex.Lock()
defer fake.getNumSubscribersMutex.Unlock()
fake.GetNumSubscribersStub = nil
if fake.getNumSubscribersReturnsOnCall == nil {
fake.getNumSubscribersReturnsOnCall = make(map[int]struct {
result1 int
})
}
fake.getNumSubscribersReturnsOnCall[i] = struct {
result1 int
}{result1}
}
func (fake *FakeLocalMediaTrack) GetQualityForDimension(arg1 uint32, arg2 uint32) livekit.VideoQuality {
fake.getQualityForDimensionMutex.Lock()
ret, specificReturn := fake.getQualityForDimensionReturnsOnCall[len(fake.getQualityForDimensionArgsForCall)]
@@ -1621,6 +1684,8 @@ func (fake *FakeLocalMediaTrack) Invocations() map[string][][]interface{} {
defer fake.getAudioLevelMutex.RUnlock()
fake.getConnectionScoreMutex.RLock()
defer fake.getConnectionScoreMutex.RUnlock()
fake.getNumSubscribersMutex.RLock()
defer fake.getNumSubscribersMutex.RUnlock()
fake.getQualityForDimensionMutex.RLock()
defer fake.getQualityForDimensionMutex.RUnlock()
fake.hasSdpCidMutex.RLock()
@@ -36,6 +36,16 @@ type FakeMediaTrack struct {
getAllSubscribersReturnsOnCall map[int]struct {
result1 []livekit.ParticipantID
}
GetNumSubscribersStub func() int
getNumSubscribersMutex sync.RWMutex
getNumSubscribersArgsForCall []struct {
}
getNumSubscribersReturns struct {
result1 int
}
getNumSubscribersReturnsOnCall map[int]struct {
result1 int
}
GetQualityForDimensionStub func(uint32, uint32) livekit.VideoQuality
getQualityForDimensionMutex sync.RWMutex
getQualityForDimensionArgsForCall []struct {
@@ -357,6 +367,59 @@ func (fake *FakeMediaTrack) GetAllSubscribersReturnsOnCall(i int, result1 []live
}{result1}
}
func (fake *FakeMediaTrack) GetNumSubscribers() int {
fake.getNumSubscribersMutex.Lock()
ret, specificReturn := fake.getNumSubscribersReturnsOnCall[len(fake.getNumSubscribersArgsForCall)]
fake.getNumSubscribersArgsForCall = append(fake.getNumSubscribersArgsForCall, struct {
}{})
stub := fake.GetNumSubscribersStub
fakeReturns := fake.getNumSubscribersReturns
fake.recordInvocation("GetNumSubscribers", []interface{}{})
fake.getNumSubscribersMutex.Unlock()
if stub != nil {
return stub()
}
if specificReturn {
return ret.result1
}
return fakeReturns.result1
}
func (fake *FakeMediaTrack) GetNumSubscribersCallCount() int {
fake.getNumSubscribersMutex.RLock()
defer fake.getNumSubscribersMutex.RUnlock()
return len(fake.getNumSubscribersArgsForCall)
}
func (fake *FakeMediaTrack) GetNumSubscribersCalls(stub func() int) {
fake.getNumSubscribersMutex.Lock()
defer fake.getNumSubscribersMutex.Unlock()
fake.GetNumSubscribersStub = stub
}
func (fake *FakeMediaTrack) GetNumSubscribersReturns(result1 int) {
fake.getNumSubscribersMutex.Lock()
defer fake.getNumSubscribersMutex.Unlock()
fake.GetNumSubscribersStub = nil
fake.getNumSubscribersReturns = struct {
result1 int
}{result1}
}
func (fake *FakeMediaTrack) GetNumSubscribersReturnsOnCall(i int, result1 int) {
fake.getNumSubscribersMutex.Lock()
defer fake.getNumSubscribersMutex.Unlock()
fake.GetNumSubscribersStub = nil
if fake.getNumSubscribersReturnsOnCall == nil {
fake.getNumSubscribersReturnsOnCall = make(map[int]struct {
result1 int
})
}
fake.getNumSubscribersReturnsOnCall[i] = struct {
result1 int
}{result1}
}
func (fake *FakeMediaTrack) GetQualityForDimension(arg1 uint32, arg2 uint32) livekit.VideoQuality {
fake.getQualityForDimensionMutex.Lock()
ret, specificReturn := fake.getQualityForDimensionReturnsOnCall[len(fake.getQualityForDimensionArgsForCall)]
@@ -1314,6 +1377,8 @@ func (fake *FakeMediaTrack) Invocations() map[string][][]interface{} {
defer fake.addSubscriberMutex.RUnlock()
fake.getAllSubscribersMutex.RLock()
defer fake.getAllSubscribersMutex.RUnlock()
fake.getNumSubscribersMutex.RLock()
defer fake.getNumSubscribersMutex.RUnlock()
fake.getQualityForDimensionMutex.RLock()
defer fake.getQualityForDimensionMutex.RUnlock()
fake.iDMutex.RLock()