rakam-io / rakam-api

📈 Collect customer event data from your apps. (Note that this project only includes the API collector, not the visualization platform)
https://rakam.io
GNU Affero General Public License v3.0
798 stars 105 forks source link

Ability to show selected columns in filter dropdown of Funnel #65

Closed sambitdixit closed 7 years ago

sambitdixit commented 7 years ago
  1. While building a funnel, people are currently able to see all columns of a collection as filter dropdown. Some of the columns of a collection may contain values which are large e.g. session_id or event_id which we dont want to show as part of filter dropdown. Instead we want a selected list of columns that should appear as part of all collection filters dropdown. This list could be configured as a comma separated list in custom json that will apply to all collection. Or it could be a comma separated list that will be skipped while showing the filter drop down. This kind of filtering is required for filters beside the funnel collection dropdown and similarly under advanced section for "custom connector field" text box. Because in custom connector field also we want to give specific columns as custom connector to group by. Instead of calling this as custom connector, i feel calling them as "Funnel by" makes more sense which people can easily understand and relate.

  2. We also want to have an ability where users can see possible values against a column when a column is selected from filter dropdown. For example if i select "os" as one column from filter dropdown and the select operator as "equals" and then in value text field, if we can show all distinct possible values for those columns that people can chose from so that people will not have to explicitly write or remember those values. For example "os" could have possible values as "android 1.0", "android 2.0", "iOS 6.0", "iOS 7.0" etc. This probably can be achieved by materialising a collection_filter table where we can maintain distinct values for selected columns. This tables needs to be populated (insert overwrite every time new data is reloaded). This process of materialising this collection_filter table should happen in a scheduled manner or on every data load time. We can take either approach, if we make it scheduled based then it becomes automatic and no dependency on when data is getting pushed.

buremba commented 7 years ago
  1. Moved to https://github.com/rakam-io/rakam-ui/issues/64
  2. Moved to https://github.com/rakam-io/rakam-ui/issues/65