IBMStreams / streamsx.monitoring

The com.ibm.streamsx.monitoring toolkit provides capabilities to create applications that monitor IBM Streams and its applications.
https://ibmstreams.github.io/streamsx.monitoring/
Other
5 stars 5 forks source link

No documentation for microservices. #109

Closed ddebrunner closed 5 years ago

ddebrunner commented 6 years ago

Typically microservices are part of the toolkit and documented with the SPLDOC of the toolkit.

However the two microservices in this project are outside the toolkit and no documentation for them seems to be available.

See: https://github.com/IBMStreams/streamsx.microservice/blob/develop/IMPLEMENTATION_GUIDELINES.md

ddebrunner commented 6 years ago

I would recommend moving them to the toolkit and using the recommended namespace style.

markheger commented 6 years ago

What would be the advantage of having the microservice projects in the toolkit? How shall they be built? Why should the toolkit depend on other toolkits like JSON, just because of microservices? User should use the released sab files of the microservices.

ddebrunner commented 6 years ago

Advantages are it's a simple standard approach, the toolkit provides operators, functions, types and microservices. I don't need to download/use N+1 toolkits to use N microservices, a single toolkit is sufficient. At least a single toolkit per microservice seems excessive, when all the microservices are probably related, and are typically related to their "parent" toolkit through types.

Like any other application, not sure about what the how shall they be built is getting at?

No real issue depending on JSON and topology toolkits, both are shipped as part of the product.

I can't use the sab files because there's no documentation or indication what os/platform they were built for. Also, currently I can't easily script running the sab files against the cloud service, so instead I would use streamsx-runner pointing at their main composites.

markheger commented 6 years ago

Proposed actions

  1. Move microservice main composite files into toolkit

    • move streamsx.monitoring/microservices/MetricsIngestService/com.ibm.streamsx.monitoring.service/MetricsIngestService.spl and streamsx.monitoring/microservices/MetricsMonitorService/com.ibm.streamsx.monitoring.service/MetricsMonitorService.spl to streamsx.monitoring/com.ibm.streamsx.monitoring/com.ibm.streamsx.monitoring.service
  2. Document usage and interfaces of microservices

    • Provide example in documentation, how to launch them with streamxs-runner
  3. Adapt existing test case using the microservices to new location

  4. Provide sab files with a release with platform/Streams Version info

    • Adapt build scripts to build them from new location
ddebrunner commented 6 years ago

Minor change: I would say the target namespace should be: com.ibm.streamsx.monitoring.metrics.services