Skip to content

[proposal] Series struct like Ecto.Schema #30

@gullitmiranda

Description

@gullitmiranda

why not use a struct like Ecto.Schema for the Series?

ex:

defmodule MySeries
  use Instream.Schema

  series do
    database    "my_database_optional"
    measurement "cpu_load"

    tag :host, default: "www"
    tag :core

    field :value, default: 100
    field :value_desc
  end
end

# or measurement name with argument of `series/2`
defmodule MySeries
  use Instream.Schema

  series "cpu_load" do
  end
end

serie = %MySeries{
  value: 100,
  value_desc: nil,
  host: "www",
  core: nil,
  timestamp: nil
}

serie.__meta__(:fields)
%MySeries.Fields{ value: 100, value_desc: nil }

serie.__meta__(:tags)
%MySeries.Tags{ host: "www", core: nil }

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions