-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enhancing RuleFailureTelemetry #1172
Comments
Related to avniproject/avni-product#1419 Backwards compatibility requirements needs to be added to the card since this is one place where we might face issues. |
@vinayvenu have added this point: Retain rule_uuid column for backwards compatibility but remove the not null constraint on it. |
add ability to navigate to the rule failed. |
Sure @mahalakshme . One more thing here is that we can potentially move the rule failure log into a different story. |
yeah @vinayvenu I have already added it under out of scope |
As part of the client code changes done, to include Source and Entity details as part of RuleFailureTelemetry, I have in general followed the principle mentioned in the card description, to indicate the Static context info as part of the "Source" and the dynamic specific instance info as part of the "Entity". Keeping the above information in mind, and also the effort involved in server and webapp code to correctly transform the Source and Entity information to a specific webpage, and then handling the various navigation aspects of that, i have not picked up the task 4. (Add a link column with a link icon as value for the rows on click of which the user should be taken to the place where the issue is.) @mahalakshme and @vinayvenu pls let me know your thoughts on whether we should work on 3.b as part of this card.? |
…elemetryList.js
After discussion with @mahalakshme and @vinayvenu , we concluded that 3.b could be handled as part of a separate card. This needs further analysis, so moving this card to CodeReviewReady with only these set of changes. |
source_type (text) |
Motivation
As an implementor, as soon as seeing a rule failure telemetry entry, I should be able to understand where the failure has occurred. I dont want to spend my time in going through the stacktrace to identify the source of the error. This will speed up my ability to fix issues with rules and we can reduce the tickets.
Context
Rule failures for the web data entry app are being logged in a different table called rule_failure_log instead of rule_failure_telemetry. We did that earlier to have additional useful fields required for the new rule system but we implemented it only on web and not on mobile. E.g. in old rule system we had a uuid for rule but in new rule system there is no rule entity with uuid so we need form id and rule type to identify the rule.
Having two tables makes it difficult to provide a user interface. We should refactor the code to put DEA errors also in the original rule_failure_telemetry table and get rid of rule_failure_log table. To start with we will fix the rule_failure_telemetry table to work with new rules as part of this card.
Acceptance criteria:
Note: Even if a old decision rule faced the issue, we need not mention the value as 'Decision' here and instead we will mention as 'OldRule' since the data storage structure of old rules are different and hence we do this to be able to track down to the issue location.
- uuid of form if source_type is Decision, VisitSchedule, etc.,
- uuid of form_element if source_type is FormElement
- uuid of FormElementGroup if source_type is FormElementGroup
- uuid of rule in the rule table if source_type is OldRule
- uuid of report_card if source_type is ReportCard
Out of scope:
The text was updated successfully, but these errors were encountered: