Need help with process/process instance management

background:

  1. I’ve set up self-managment zeebe(no other component due to i have no production-license);
  2. using zeebe-elasticsearch-exporter store data in elasticsearch;
  3. using zeebe-go-client to invoke zeebe api;
  4. access elasticsearch through elasticsearch-go-client.

now i want to perform functions below:

  1. list process definition
  • need to filter by user, but i’m not able to find a place to store useinfo in zeebe api, Do i need to maintain userId-processDefinitionKey relation myself?
  • need data isolation, i guess tenantId is for isolation, but if i have multiple isolate dimensions, Should i concat these info and store it in tenantId?
  • process version only support int32, if i want to use semantic version(string type), Do I need to maintain version-mapping myself?
  1. list process instance
  • also need to filter by user, Can i store userinfo in variables and use it to search?
  • need data isolation,same with the above.

The key is that I want to confirm if Zeebe can do these things, if can not, i’ll do it myself.

It would be very kind of you to give me some feedback!