X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=src%2Fbeam_stats_msg_graphite.erl;h=159900e0a99bbb53c37a43a530b3fc52c6fadbc9;hb=HEAD;hp=d33e45054dc8f6e67a95f60e7e627d4470e481a5;hpb=cdcb989e330d3a018b44b154c190c33b9b27040c;p=beam_stats.git diff --git a/src/beam_stats_msg_graphite.erl b/src/beam_stats_msg_graphite.erl index d33e450..159900e 100644 --- a/src/beam_stats_msg_graphite.erl +++ b/src/beam_stats_msg_graphite.erl @@ -19,6 +19,7 @@ , node_id_to_bin/1 ]). +-define(SCHEMA_VERSION, <<"beam_stats_v0">>). -define(T, #?MODULE). -type t() :: @@ -77,12 +78,12 @@ to_iolist( ValueBin = integer_to_binary(Value), TimestampInt = timestamp_to_integer(Timestamp), TimestampBin = integer_to_binary(TimestampInt), - [PathIOList, <<" ">>, ValueBin, <<" ">>, TimestampBin]. + [PathIOList, <<" ">>, ValueBin, <<" ">>, TimestampBin, <<"\n">>]. -spec path_to_iolist([binary()]) -> iolist(). path_to_iolist(Path) -> - interleave(Path, <<".">>). + list_interleave(Path, <<".">>). -spec node_id_to_bin(node()) -> binary(). @@ -97,24 +98,21 @@ node_id_to_bin(NodeID) -> -spec path_prefix_schema_version(t()) -> t(). path_prefix_schema_version(?T{}=T) -> - path_prefix(T, schema_version()). + path_prefix(T, ?SCHEMA_VERSION). -spec path_prefix(t(), binary()) -> t(). path_prefix(?T{path=Path}=T, <>) -> T?T{path = [Prefix | Path]}. --spec schema_version() -> - binary(). -schema_version() -> - <<"beam_stats_v0">>. - --spec interleave(iolist(), iodata()) -> - iolist(). -interleave([], _) -> []; -interleave([X], _) -> [X]; -interleave([X|Xs], Sep) -> - [X, Sep | interleave(Xs, Sep)]. +-spec list_interleave([A], A) -> + [A]. +list_interleave([], _) -> + []; +list_interleave([X], _) -> + [X]; +list_interleave([X|Xs], Sep) -> + [X, Sep | list_interleave(Xs, Sep)]. -spec timestamp_to_integer(erlang:timestamp()) -> non_neg_integer().