microsoft / service-fabric

Service Fabric is a distributed systems platform for packaging, deploying, and managing stateless and stateful distributed applications and containers at large scale.
https://docs.microsoft.com/en-us/azure/service-fabric/
MIT License
3.02k stars 398 forks source link

Support for service data exploration? #1277

Open jaydavid opened 4 years ago

jaydavid commented 4 years ago

Hello!

Is there any way to explore the data contained within a reliable service and/or set of actors?

I'm extremely interested in adopting Service Fabric as a platform upon which to build a few applications, but I'm worried about eventually getting to a production scenario and having everything be a complete black box. I love the ease on the development side that comes with allowing services to take care of data, and not having to call out to separate storage is a big reason for my interest in Service Fabric as a whole, but without a way to query and diagnose issues real-time I'm concerned that an issue will be raised for which the resolution will be, "That's weird... it should work" until a developer (me) can reproduce it in a local environment and step through on an attached debugger.

Also - apologies if this is not the correct location for this question. Thanks!

jeffj6123 commented 4 years ago

As of right now there are not any plans to add a way to view into this data into SFX but there are other tools that have been created to handle this problem.

@raunakpandya would be able to give more information about this, but I think https://github.com/microsoft/service-fabric-backup-explorer would be the answer you're looking for.

raunakpandya commented 4 years ago

There are two scenarios here really for viewing data. One is online (live service) and other offline. The service fabric backup explorer helps you with the later. You can take a dump/ backup of your Reliable collections in the service and use the backup explorer to browse through the data and on the way fix it as well if required before restoring it back. The online scenario, currently can be achieved by the service itself exposing certain "internal" APIs which can be called to return back the snapshot per say. There have been community projects around the same - https://github.com/jessebenson/service-fabric-queryable . @preethasubbarayalu can comment more here.

zuhairp commented 4 years ago

We are working on an official tool to view live data in reliable collections. We hope to release it in the coming months

jaydavid commented 4 years ago

@jeffj6123 @raunakpandya @zuhairp Thank you for the responses! I'll look into using backups and the relevant explorer as a means to deal with any issues that come up, and look forward to the reliable collections exploration eventually making its way to the explorer.

One small addition - any chance for support for digging into the data contained within actors? I'm just not sure if that's covered by what you mentioned was being worked on, @zuhairp

jeffj6123 commented 4 years ago

@raunakpandya do you want to transfer this to the backup explorer repo?

raunakpandya commented 4 years ago

I think we can move this to runtime repo for trackign the live rc explorer.