0% found this document useful (0 votes)
12 views1 page

Reporter Dev Guide

Uploaded by

ddlyt000124
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views1 page

Reporter Dev Guide

Uploaded by

ddlyt000124
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

10/29/22, 9:18 AM dev-guide.

md · development · vle / reporter · GitLab

CORE-3823 - added development guide a6eee8dd


Stephen Amsel authored 3 months ago and Chun Chang committed 3 months ago

dev-guide.md 2.11 KB

Reporter
Resources Managed
Proof of Play
Reporter generates S3 objects containing lists of assets played and when they were played, depending on payloads sent to it by Canvases
and VModules. It works as a pass-through for these going to S3.
These S3 objects are then accessible to users at the v1/playbacks/reports endpoint, where Reporter reads from S3 and sends the
payload.
Known Pain Points
The data is stored in S3 so there is no way to organize it for retrieval except by S3 Key, which runs by Player and Date. For example, any
search for which canvases played a given Asset, or how many times that Asset was played over a time-period would have to be done
ni-memory after retriving all potentially pertinent S3 objects. Memory and porcessing requirements may be prohibitive.
Generate Plaback Report
A Cron Job which triggers every 6 hours runs rake playbacks:generate_playback_reports . This loops over Tenants and synchronously
triggers the GenerateDailyPlaybacksReportsJob for each of them.
Known Pain Points
Synchronously triggered Job - unintuitive. Code should probably be stored in /ib and triggered directly.
Load scales with the number of canvases in the field. In-memory triggering of cron-job means this does not scale outward.
Forward Logs
The v1/logstash/batch endpoint forwards payloads sent to Reporter by Players to its logs. Those in turn are forwarded to our log-
management tool, currently NewRelic. This allows us to combine device-information with server-logs and see a more complete picture of
transactions involving Cavnases and VModules.
Known Pain Points
No standardization for payloads (all built manually)
Many canvas-related issues involve them either being offline, or impact large numbers of canvases and load the system so that logging
services may be flooded and have wrong timestamps.
Communication
This service publishes Playback Report reception over AMQP, and forwards connection-quality data from the devices, also over AMQP, both
for consumption by LiveChecker.

https://git.videri.com/vle/reporter/-/blob/development/dev-guide.md 1/1

You might also like