Add envoy support to solar logger

This commit is contained in:
2022-08-15 13:14:16 +02:00
parent 642170172a
commit 35e6ec08d7
16 changed files with 355 additions and 309 deletions

31
script/solar/migrate.sql Normal file
View File

@@ -0,0 +1,31 @@
BEGIN TRANSACTION;
-- Alter metric columns
ALTER TABLE SolarPanelOutput RENAME COLUMN Watts TO CurrentWatts;
ALTER TABLE SolarPanelOutput ADD COLUMN TotalWatts BIGINT;
UPDATE SolarPanelOutput SET TotalWatts = CAST(ROUND(KilowattHour * 1000) AS BIGINT);
ALTER TABLE SolarPanelOutput DROP COLUMN KilowattHour;
ALTER TABLE SolarPanelSummary ADD COLUMN TotalWatts BIGINT;
UPDATE SolarPanelSummary SET TotalWatts = CAST(ROUND(Kilowatthour * 1000) AS BIGINT);
ALTER TABLE SolarPanelSummary DROP COLUMN Kilowatthour;
-- Optimize indice
CREATE INDEX idx_TotalWatts ON SolarPanelOutput (TotalWatts);
-- Fix date bug
UPDATE SolarPanelOutput SET Date = '2018-02-02' WHERE Date = '18-02-02';
-- Remove bogus data
DELETE FROM SolarPanelOutput WHERE Date = '2018-02-02' AND TimeUtc = '08:15:10';
DELETE FROM SolarPanelOutput WHERE Date = '2018-01-02' AND TimeUtc = '13:31:03';
-- Copy data
INSERT INTO ZeverLogs (Date, TimeUtc, CurrentWatts, TotalWatts) SELECT * FROM SolarPanelOutput;
INSERT INTO ZeverSummary (Date, TotalWatts) SELECT * FROM SolarPanelSummary;
-- Delete old table
DROP TABLE SolarPanelOutput;
DROP TABLE SolarPanelSummary;
COMMIT;