Skip to content

Instantly share code, notes, and snippets.

@jimsynz
Created September 14, 2015 01:54
Show Gist options
  • Select an option

  • Save jimsynz/30857c50d2fd1fcba7f3 to your computer and use it in GitHub Desktop.

Select an option

Save jimsynz/30857c50d2fd1fcba7f3 to your computer and use it in GitHub Desktop.
defp store_jitter received_at, delivered_at do
received_usec = Time.to_usecs received_at
delivered_usec = Time.to_usecs delivered_at
jitter_usecs = delivered_usec - received_usec
delivered_sec = delivered_at |> Time.to_secs |> trunc
delivered_5m = delivered_at |> Time.to_secs |> trunc |> rem 300
delivered_1h = delivered_at |> Time.to_secs |> trunc |> rem 3600
{:ok, _} = R.query [
["MULTI"],
["ZADD", namespace("jitter"), delivered_usec, jitter_usecs],
["ZADD", namespace(hostname <> ":jitter"), delivered_usec, jitter_usecs],
["ZADD", namespace("jitter_1s"), jitter_usecs, delivered_sec]
["ZADD", namespace(hostname <> ":jitter_1s"), jitter_usecs, delivered_sec]
["ZADD", namespace("jitter_5m"), jitter_usecs, delivered_5m]
["ZADD", namespace(hostname <> ":jitter_5m"), jitter_usecs, delivered_5m]
["ZADD", namespace("jitter_1h"), jitter_usecs, delivered_1h]
["ZADD", namespace(hostname <> ":jitter_1h"), jitter_usecs, delivered_1h]
["EXEC"]
]
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment