Mike Lang
e4d3e418c8
transcode checker: longer retry while waiting for videos to finish
...
but still check db often.
This prevents us from using too much api quota on these checks,
while still letting us spot new videos quickly.
5 years ago
Mike Lang
1f15900b6f
cutter: At least for now, don't auto-retry errors
...
This leads to rapidly exhausting our upload limit since even a fast failed request
costs the same amount of usage quota as a 1-hour long video.
5 years ago
Mike Lang
fbef4725d7
cutter: Handle case where we are told to stop while looking for candidates
...
Previously, it would return None and things would break. Now the None is handled
correctly, and is documented.
5 years ago
Mike Lang
5cec6ec96e
cutter: Reconnect after any error that might be a database error
...
After certain kinds of DB error (eg. lost conn), we need to make a new conn
to have things work again. To be safe, we just do it after every error where it might
be a problem.
5 years ago
Mike Lang
fea9ff6c1d
cutter: Fix dockerfile, which was missing ffmpeg dependency
5 years ago
Mike Lang
f50276bd01
backfiller: Expose recent_cutoff as CLI arg and increase it to 120s default
...
In testing, GDQ's stream delay went up over 1min, which caused backfillers to backfill
segments at the same time they were downloaded. We increase the window for now,
and also make it configurable.
5 years ago
MasterGunner
6fa9d9d388
Merge pull request #64 from ekimekim/gunner/additional-thrimbletrimmer-integration
...
Gunner/additional thrimbletrimmer integration
5 years ago
MasterGunner
2e953eddde
Cleanup from Ekim's comments, removed auth placeholder until I know what I'm doing.
5 years ago
MasterGunner
6a171130e8
Updated Get All Rows route.
5 years ago
MasterGunner
736f0e0fe4
Adding get_all_row and auth function stubs
5 years ago
Mike Lang
41fffc2809
Merge pull request #62 from ekimekim/mike/monitoring
...
Scripts for running prometheus/grafana for monitoring
5 years ago
Mike Lang
612e34b88d
Merge pull request #61 from ekimekim/mike/backfiller/concurrent
...
backfiller: Allow multiple concurrent segment downloads
5 years ago
Mike Lang
29040a166c
backfiller: Allow multiple concurrent segment downloads
...
This will signifigantly increase throughput when downloading
large ranges of segments.
The max concurrency is exposed as a cli arg.
We also slightly modify the logged info, so it reports segments downloaded,
not just number of missing segments (which we might skip downloading for various reasons).
6 years ago
Christopher Usher
ec5a545fd2
Merge branch 'mike/sheetsync/fix-db-error'
6 years ago
Mike Lang
7273ee071e
monitoring fixes
6 years ago
Mike Lang
5a6d443efd
grafana: View-only anonymous access
6 years ago
Christopher Usher
980875b6f3
Merge branch 'mike/sheetsync/fix-db-error' of https://github.com/ekimekim/wubloader into mike/sheetsync/fix-db-error
6 years ago
Christopher Usher
37bad7d5ed
Also reset database connection on error in the backfiller
6 years ago
Christopher Usher
28f350dd46
Also reset database connection on error in the backfiller
6 years ago
Mike Lang
e048db0d94
cutter: Fix a failure mode where we never recover from a DB conn failure in TranscodeChecker
...
Since we never got a new conn after failure, we would just keep erroring with
"connection already closed" errors.
This isn't applicable to the main cutter loops since a DB failure there will restart the process.
6 years ago
Mike Lang
fe68e98804
sheetsync: Fix a failure mode where we never recover from a DB conn failure
...
Since we never got a new conn after failure, we would just keep erroring with
"connection already closed" errors.
6 years ago
Mike Lang
a767760f02
Add some existing scripts for setting up prometheus
6 years ago
Mike Lang
90eb2a4f13
Merge pull request #59 from ekimekim/mike/fixes
...
Some misc fixes from cutter and backfiller, see commits
6 years ago
Mike Lang
51efeb1f12
Merge pull request #58 from ekimekim/mike/nginx-dns-hack
...
Fix nginx when some services are disabled
6 years ago
Mike Lang
7179fcacec
Backfiller: ignore temp segments
...
To make this work, we make type a proper segment field.
We also tell get_best_segments to ignore temp segments, since they might go away
before we can actually use them.
6 years ago
Mike Lang
85c110ccb4
cutter: Fix typo from when we moved to the client model instead of auth headers
6 years ago
Mike Lang
3fa3c73d0e
Fix nginx when some services are disabled
...
nginx tries to resolve everything at startup, which doesn't work
if some of the services aren't present.
we instead generate the config file from a passed in env var, so that only
enabled services are present.
6 years ago
Mike Lang
6d729fa5cc
Merge pull request #57 from ekimekim/mike/compose-bits
...
Some stuff for making the docker compose setup easier
6 years ago
Mike Lang
6071a2f18d
docker_compose: Add a local postgres instance as an optional service
...
The node hosting the database can then easily run it as part of the stack.
6 years ago
Mike Lang
63eb324ba5
Add nginx service that provides a frontend to all the other services
...
This allows us to run all the different services and expose all their metrics,
all on one port.
6 years ago
Mike Lang
a7a54db726
docker-compose: Restructure for some finer control
...
Allow enabling/disabling at top of file
Allow no port to be exposed for any service
6 years ago
Mike Lang
499e486b0b
Merge pull request #54 from ekimekim/mike/sheet-sync/initial
...
sheet sync
6 years ago
Mike Lang
018e920808
sheet-sync: Some fixes
6 years ago
Christopher Usher
dd246e1343
ekimekim's suggestions
6 years ago
Christopher Usher
9b28765ff2
Bug fixes to get the database connection working
6 years ago
Christopher Usher
4b9fbcb7d2
backfiller database code
6 years ago
Mike Lang
6c47f32d16
docker-compose.jsonnet: Add sheet sync
6 years ago
Mike Lang
f354130434
sheetsync: Only allocate ids when first needed
...
This prevents rate limiting issues when immediately allocating all 999 ids
for an empty sheet.
6 years ago
Mike Lang
11fc67f071
sheetsync: Review feedback
...
* Expand on some comments
* Fix conflicting port number
* Write help text for all args
6 years ago
Mike Lang
9762f308a0
Implement main part of sheet sync
6 years ago
Mike Lang
5a44bfdf51
Google sheets api wrapper
...
Exposes a way to read all rows, and write a single cell.
We need to read all columns of each row so we know what would be modified
so we only do updates to single cells that aren't already the correct value.
This keeps us from impacting the sheet load too much with constantly changing values,
which I think might be a thing even if the values are the same.
6 years ago
Mike Lang
3647d091f8
Move common google api auth functionality into common
...
So we can reuse it for google sheets
6 years ago
Mike Lang
2b4d2cce90
sheet sync: Basic skeleton
6 years ago
Mike Lang
3ccace2a73
database: Update constraints to allow null edit inputs in state DONE
...
This allows manual uploads to work without needing to fill all the edit fields
with junk.
We also set a constraint on uploader asserting that any videos from claimed onwards have a known uploader.
Again, an exception is made for DONE to allow manual uploads.
6 years ago
Mike Lang
33be5a92cb
Update docker-compose file for thrimshim and cutter
...
Also update thrimshim to take db connect args as positional,
for consistency with cutter.
6 years ago
Christopher Usher
afdad26a51
More fixes
6 years ago
Christopher Usher
c3c75b1e4f
manually setting a video link now also its own endpoint
6 years ago
Christopher Usher
b7a57d4766
reset is now it's own method
6 years ago
Christopher Usher
fe5b10f86b
Fixes the state transitions of the trimbleshim to allow video links to be changed or removed
6 years ago
Mike Lang
5c84e8dfab
restreamer: Fix wrong name for parse function
...
derp
6 years ago