Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
6d5075817e | |||
a02e8c5061 | |||
4a1a8fe8a0 | |||
2087f6829f |
1
TODO.md
1
TODO.md
@ -2,6 +2,7 @@
|
||||
- [x] Redis recorder panic
|
||||
|
||||
# TODO
|
||||
- [ ] Make recorder.Set concurrent
|
||||
- [ ] Add json schema to CI and README
|
||||
- [ ] Update README
|
||||
- [ ] Add Grafana dashboard
|
||||
|
@ -15,13 +15,13 @@ type: application
|
||||
# This is the chart version. This version number should be incremented each time you make changes
|
||||
# to the chart and its templates, including the app version.
|
||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||
version: 0.1.4
|
||||
version: 0.1.6
|
||||
|
||||
# This is the version number of the application being deployed. This version number should be
|
||||
# incremented each time you make changes to the application. Versions are not expected to
|
||||
# follow Semantic Versioning. They should reflect the version the application is using.
|
||||
# It is recommended to use it with quotes.
|
||||
appVersion: "v0.11.2"
|
||||
appVersion: "v0.12.1"
|
||||
|
||||
dependencies:
|
||||
- name: hull
|
||||
|
@ -163,24 +163,43 @@ func (aw *AmbientWeather) handleProviderRequest(
|
||||
updateSpan.SetAttributes(attribute.String("stationName", update.StationConfig.Name))
|
||||
}
|
||||
|
||||
// Concurrently record the now enriched update
|
||||
// to the configured recorder and to otel, and proxy
|
||||
// to enabled downstream providers
|
||||
var updateWg sync.WaitGroup
|
||||
|
||||
// Record state
|
||||
aw.weatherRecorder.Set(ctx, update)
|
||||
updateWg.Add(1)
|
||||
go func() {
|
||||
defer updateWg.Done()
|
||||
aw.weatherRecorder.Set(ctx, update)
|
||||
}()
|
||||
|
||||
// Update metrics
|
||||
aw.metricsUpdate(ctx, p, update)
|
||||
updateWg.Add(1)
|
||||
go func() {
|
||||
defer updateWg.Done()
|
||||
aw.metricsUpdate(ctx, p, update)
|
||||
}()
|
||||
|
||||
// Proxy update to one or both services if configured to do so
|
||||
// Uses a weather update to allow awn to publish to wunderground and
|
||||
// visa versa.
|
||||
if update.StationConfig != nil {
|
||||
updateWg.Add(1)
|
||||
go func() {
|
||||
defer updateWg.Done()
|
||||
aw.proxyUpdate(ctx, p, update)
|
||||
}()
|
||||
}
|
||||
|
||||
updateWg.Wait()
|
||||
|
||||
l.Debug().
|
||||
Str("provider", p.Name()).
|
||||
Any("update", update).
|
||||
Msg("successfully handled update")
|
||||
w.Write([]byte("ok"))
|
||||
|
||||
// Proxy update to one or both services if configured to do so
|
||||
// Uses a weather update to allow awn to publish to wunderground and
|
||||
// visa versa.
|
||||
if update.StationConfig != nil {
|
||||
aw.proxyUpdate(ctx, p, update)
|
||||
}
|
||||
}
|
||||
|
||||
func (aw *AmbientWeather) enrichUpdate(
|
||||
|
Reference in New Issue
Block a user