Supportability: Best Practices for partners
This document provides guidance for Fabric's partners on how to support their customers. It covers best practices for maintaining, saving, and correlating important request headers, as well as recommendations for logging, monitoring, and support.
Overview
Fabric enables third-party partners to integrate their services into the platform using the Fabric Development Kit. This document outlines the supportability practices that partners should follow to ensure effective troubleshooting and customer support.
Request Headers
Fabric exposes two important headers in requests made between the customer and Fabric, which are crucial for supportability:
- ActivityId: A globally unique ID that can be used by you, the developer, to correlate the request with your systems when a Fabric user interacts with your workload.
- RequestId: A globally unique ID that helps us (Fabric) to correlate your request with our traces, which will help us investigate the issue and assist you. If you cannot determine the issue on your end using the
ActivityId
, you can provide theRequestId
to us when reporting an issue. Ensure that you maintain and save theRequestId
so it can be easily provided later.
Best Practices for Supportability
To effectively support your customers, it is essential to maintain, save, and correlate these IDs. Here are some best practices:
1. Logging
- Retention of Logs: Ensure that logs are retained for a sufficient period to allow for effective troubleshooting.
- Detailed Logging: Include the
ActivityId
andRequestId
in all relevant log entries. This will help you trace the flow of a request through your system.
2. Monitoring
- Real-time Monitoring: Implement real-time monitoring to detect and alert on issues as they occur. This includes monitoring request rates, error rates, and system performance.
- Correlation with Headers: Ensure that your monitoring tools can correlate logs and metrics using the
ActivityId
andRequestId
. This will help you quickly identify and diagnose issues.
3. Support
- Customer Support: Train your support team to ask for the
ActivityId
andRequestId
when dealing with customer issues. This will expedite the troubleshooting process. - Documentation: Provide clear documentation to your customers on how to obtain and use these IDs when reporting issues.
Example Workflow
- Log Entry: When a request is received, log the
ActivityId
andRequestId
along with other relevant information. - Monitor: Use monitoring tools to track the request in real time, correlating with the IDs.
- Troubleshoot: If an issue arises, use the
ActivityId
andRequestId
to trace the request through your logs and systems. - Support: When a customer reports an issue, ask for the
ActivityId
andRequestId
to quickly locate the relevant logs and provide assistance. If the issue cannot be determined on your end, provide theRequestId
to Fabric support for further investigation.
Conclusion
By following these best practices, partners can effectively support their customers on the Fabric data platform, ensuring a seamless and efficient troubleshooting process. Proper logging, monitoring, request management, and support protocols are essential to maintaining high service quality and customer satisfaction.