defmodule ArcadiaCloud.Sync.MeteringWorker do @moduledoc """ Daily metering job — meters the previous (complete) UTC day for every deployment-attributed resource. Runs early each day so the day being metered is fully over. """ use Oban.Worker, queue: :metering, max_attempts: 3 require Logger alias ArcadiaCloud.Metering @impl Oban.Worker def perform(_job) do date = Date.add(Date.utc_today(), -1) count = Metering.meter_day(date) Logger.info("[metering] metered #{date}: #{count} usage records") :ok end end