{"action":"created","comment":{"url":"https://api.github.com/repos/Rookout/docs/pulls/comments/217967121","pull_request_review_id":155800960,"id":217967121,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxNzk2NzEyMQ==","diff_hunk":"@@ -1,33 +1,63 @@\n ---\n id: troubleshooting-rules\n-title: Rules\n+title: Troubleshooting Rules\n ---\n \n+As you create, modify or trigger a rule, it may change its status once or more.\n \n-## Gray - Rule is pending\n-- Rule is not being applied because of selectors\n-- Rule is not being applied because there are no agents\n-- Rule is not being applied because there are no Rooks\n-- Rule is not being applied because the appropriate Rooks are not connected\n-- Rule is not being applied because paths differ (Python/Node)\n-- Rule is not being applied because source maps are missing (Node)\n-\n-## Orange - Rule is Warning\n-- Error in script\n-- Source missing (Java)\n-\n-\n-## Red - Rule is Error\n-- JSON is invalid\n-  - JSON has failed loading/processing\n-  - Check your JSON against documentation and templates\n-- Hash mismatch\n-  - Source file differs between configuration and production\n-  - **Future features:** smaller hashes, identify production file based on hash and display\n-- Python Bdb failed to find code\n-  - Two “features”:\n-    - In Python there is no “Hoisting” and code objects are only created as their definitions are executed.\n-    Today, we are unable to know if this has happened and will assume any loaded module has been fully loaded.\n-    - In order to avoid this problem, import rook only after modules has been properly initialized. A common use-case\n-    is loaded just before if `__name__ == “__main__”`\n-  - Module scope instrumentation is not supported under CPython\n+As rules are created, they are in Pending status (Grey).\n+In this state, Rookout will try and connect the Rule to the Rooks it applies to.\n+\n+If all goes well, as the Rule is activated in all Rooks it applies to, the Rule will change its status to Active (Green).\n+If the rule does not turn green in a few seconds, check out the cases below to try and troubleshooit it.\n+\n+In some cases, the Rook may face a temporary limitation preventing it from applying the Rule, and the Rule will change its status to Warning (Orange).\n+In such cases the Rule *may* send messages, but you are advised to click the Rule status indicator and follow the instructions below to resolve the warning.\n+Note that in this case the Rule will maintain the Warning status. You may remove it and add it again to make sure it turns Active.\n+\n+In other cases, the Rook may face an issue preventing it from working as expected, and the Rule will change its status to Error (Red).\n+In such cases the Rule is not expected to send messages, and you are advised to click the Rule status indicator and follow the instructions below to resolve the warning.\n+Note that in this case the Rule will maintain the Error status. You may remove it and add it again to make sure it turns Active.\n+\n+## Rule remains in Pending status - Grey\n+The most likely reason for a Rule remaining in Pending status is that it cannot connect to the relevant Rooks.\n+Make sure the relevant App Instances are available in the Rookout application -> App Instances & Agents page.\n+If the relevant App Instances are missing, it may indicate one or more of the following:\n+- The application you are trying to debug is down (Which means the Rooks are inactive). Follow the instructions in the [Troubleshooting Rooks](troubleshooting-rooks.md) page.\n+- The application is up, but the Rooks are not accessible (That is, the Rookout service cannot access the Rooks). Follow the instructions in the [Troubleshooting Rooks](troubleshooting-rooks.md) page.\n+- In serverless frameworks such as Lambda, the application itself isn't up until the serverless function is triggered.\n+In such cases, the Rule will only become Active after the first function trigger.\n+\n+If you are using *selectors* in your script, make sure they correctly apply to the relevant Rules.\n+\n+If you are debugging a Python or Node application, make sure the paths are defined correctly.\n+\n+If you are debugging a Node application, make sure the source maps are available.\n+\n+If you are using local Rook Agents, make sure they are up and running, and they are accessible from the application you are trying to debug.\n+Make sure the relevant Rook Agents are available in the Rookout application -> App Instances & Agents page -> Agents tab.\n+If the relevant Agents are missing, follow the instructions in the [Agent Troubleshooting](troubleshooting-agent.md) page.\n+\n+## Rule is in Warning status - Orange\n+\n+The most likely reason for a Rule switching to Warning status is an error in the Rule script.\n+Click the Rule status indocator to open the notifications page, and expand the relevant notification(s).\n+- If you see any of the following notifications, check your script and make sure the relevant variable(s) are defined correctly.\n+*Attribute not found*; *Key not found*; *Method not found*; *Write attribute not supported*; *Operation is read only*\n+\n+If you are debugging a Java applicatin, make sure the source files are not missing.\n+\n+## Rule is in Error status - Red\n+\n+The most likely reason for a Rule switching to Error status is a malformed or mismatched Rule script.\n+Click the Rule status indocator to open the notifications page, and expand the relevant notification(s).\n+- If you see a *Hash mismatch* error, make sure the code version in your source view matches the code version in the deployed application.\n+- If you see any of the following error messages, make sure the JSON file is correctly formatted:\n+*Invalid configuration path*; *Invalid Configuration Key*; *Object Name Missing in configuration*; *Configuration specifies an unknown object name*; *Object configuration is invalid*\n+- If you see a *Send to Rookout is disabled message*, change the Rule target so it doesn't send data to Rookout, or contact your administrator.\n+- If you see an *Invalid rule position* message, make sure the Rule is applied at the correct code location.\n+- If you see a *Rule was disabled due to rate-limiting* message, it means that Rookout has disabled the Rule after it saw too frequent messages.","path":"docs/troubleshooting-rules.md","position":87,"original_position":87,"commit_id":"a786449d01d1ed19ee986d06a1e1e6bcb735a188","original_commit_id":"a786449d01d1ed19ee986d06a1e1e6bcb735a188","user":{"login":"Rookeret73","id":42117554,"node_id":"MDQ6VXNlcjQyMTE3NTU0","avatar_url":"https://avatars2.githubusercontent.com/u/42117554?v=4","gravatar_id":"","url":"https://api.github.com/users/Rookeret73","html_url":"https://github.com/Rookeret73","followers_url":"https://api.github.com/users/Rookeret73/followers","following_url":"https://api.github.com/users/Rookeret73/following{/other_user}","gists_url":"https://api.github.com/users/Rookeret73/gists{/gist_id}","starred_url":"https://api.github.com/users/Rookeret73/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rookeret73/subscriptions","organizations_url":"https://api.github.com/users/Rookeret73/orgs","repos_url":"https://api.github.com/users/Rookeret73/repos","events_url":"https://api.github.com/users/Rookeret73/events{/privacy}","received_events_url":"https://api.github.com/users/Rookeret73/received_events","type":"User","site_admin":false},"body":"TODO: mention the current limit?","created_at":"2018-09-17T07:18:44Z","updated_at":"2018-09-17T07:18:45Z","html_url":"https://github.com/Rookout/docs/pull/52#discussion_r217967121","pull_request_url":"https://api.github.com/repos/Rookout/docs/pulls/52","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/Rookout/docs/pulls/comments/217967121"},"html":{"href":"https://github.com/Rookout/docs/pull/52#discussion_r217967121"},"pull_request":{"href":"https://api.github.com/repos/Rookout/docs/pulls/52"}},"in_reply_to_id":217914301},"pull_request":{"url":"https://api.github.com/repos/Rookout/docs/pulls/52","id":215318896,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE1MzE4ODk2","html_url":"https://github.com/Rookout/docs/pull/52","diff_url":"https://github.com/Rookout/docs/pull/52.diff","patch_url":"https://github.com/Rookout/docs/pull/52.patch","issue_url":"https://api.github.com/repos/Rookout/docs/issues/52","number":52,"state":"open","locked":false,"title":"Troubleshooting guide - Rules","user":{"login":"Rookeret73","id":42117554,"node_id":"MDQ6VXNlcjQyMTE3NTU0","avatar_url":"https://avatars2.githubusercontent.com/u/42117554?v=4","gravatar_id":"","url":"https://api.github.com/users/Rookeret73","html_url":"https://github.com/Rookeret73","followers_url":"https://api.github.com/users/Rookeret73/followers","following_url":"https://api.github.com/users/Rookeret73/following{/other_user}","gists_url":"https://api.github.com/users/Rookeret73/gists{/gist_id}","starred_url":"https://api.github.com/users/Rookeret73/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rookeret73/subscriptions","organizations_url":"https://api.github.com/users/Rookeret73/orgs","repos_url":"https://api.github.com/users/Rookeret73/repos","events_url":"https://api.github.com/users/Rookeret73/events{/privacy}","received_events_url":"https://api.github.com/users/Rookeret73/received_events","type":"User","site_admin":false},"body":"First step in the bigger effort of updating our troubleshooting guides.\r\nrewrote the Rules Troubleshooting guide and made syntactic improvements elsewhere.","created_at":"2018-09-13T15:15:15Z","updated_at":"2018-09-17T07:18:45Z","closed_at":null,"merged_at":null,"merge_commit_sha":"33712f1a731442255912af662be808d67ce556b3","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":1011426352,"node_id":"MDU6TGFiZWwxMDExNDI2MzUy","url":"https://api.github.com/repos/Rookout/docs/labels/docs","name":"docs","color":"ffa3ef","default":false},{"id":880143571,"node_id":"MDU6TGFiZWw4ODAxNDM1NzE=","url":"https://api.github.com/repos/Rookout/docs/labels/enhancement","name":"enhancement","color":"a2eeef","default":true}],"milestone":null,"commits_url":"https://api.github.com/repos/Rookout/docs/pulls/52/commits","review_comments_url":"https://api.github.com/repos/Rookout/docs/pulls/52/comments","review_comment_url":"https://api.github.com/repos/Rookout/docs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Rookout/docs/issues/52/comments","statuses_url":"https://api.github.com/repos/Rookout/docs/statuses/a786449d01d1ed19ee986d06a1e1e6bcb735a188","head":{"label":"Rookout:troubleshooting-guide","ref":"troubleshooting-guide","sha":"a786449d01d1ed19ee986d06a1e1e6bcb735a188","user":{"login":"Rookout","id":30212996,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwMjEyOTk2","avatar_url":"https://avatars0.githubusercontent.com/u/30212996?v=4","gravatar_id":"","url":"https://api.github.com/users/Rookout","html_url":"https://github.com/Rookout","followers_url":"https://api.github.com/users/Rookout/followers","following_url":"https://api.github.com/users/Rookout/following{/other_user}","gists_url":"https://api.github.com/users/Rookout/gists{/gist_id}","starred_url":"https://api.github.com/users/Rookout/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rookout/subscriptions","organizations_url":"https://api.github.com/users/Rookout/orgs","repos_url":"https://api.github.com/users/Rookout/repos","events_url":"https://api.github.com/users/Rookout/events{/privacy}","received_events_url":"https://api.github.com/users/Rookout/received_events","type":"Organization","site_admin":false},"repo":{"id":126847086,"node_id":"MDEwOlJlcG9zaXRvcnkxMjY4NDcwODY=","name":"docs","full_name":"Rookout/docs","private":false,"owner":{"login":"Rookout","id":30212996,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwMjEyOTk2","avatar_url":"https://avatars0.githubusercontent.com/u/30212996?v=4","gravatar_id":"","url":"https://api.github.com/users/Rookout","html_url":"https://github.com/Rookout","followers_url":"https://api.github.com/users/Rookout/followers","following_url":"https://api.github.com/users/Rookout/following{/other_user}","gists_url":"https://api.github.com/users/Rookout/gists{/gist_id}","starred_url":"https://api.github.com/users/Rookout/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rookout/subscriptions","organizations_url":"https://api.github.com/users/Rookout/orgs","repos_url":"https://api.github.com/users/Rookout/repos","events_url":"https://api.github.com/users/Rookout/events{/privacy}","received_events_url":"https://api.github.com/users/Rookout/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/Rookout/docs","description":"Rookout Documentation","fork":false,"url":"https://api.github.com/repos/Rookout/docs","forks_url":"https://api.github.com/repos/Rookout/docs/forks","keys_url":"https://api.github.com/repos/Rookout/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Rookout/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Rookout/docs/teams","hooks_url":"https://api.github.com/repos/Rookout/docs/hooks","issue_events_url":"https://api.github.com/repos/Rookout/docs/issues/events{/number}","events_url":"https://api.github.com/repos/Rookout/docs/events","assignees_url":"https://api.github.com/repos/Rookout/docs/assignees{/user}","branches_url":"https://api.github.com/repos/Rookout/docs/branches{/branch}","tags_url":"https://api.github.com/repos/Rookout/docs/tags","blobs_url":"https://api.github.com/repos/Rookout/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Rookout/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Rookout/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/Rookout/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Rookout/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/Rookout/docs/languages","stargazers_url":"https://api.github.com/repos/Rookout/docs/stargazers","contributors_url":"https://api.github.com/repos/Rookout/docs/contributors","subscribers_url":"https://api.github.com/repos/Rookout/docs/subscribers","subscription_url":"https://api.github.com/repos/Rookout/docs/subscription","commits_url":"https://api.github.com/repos/Rookout/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/Rookout/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/Rookout/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/Rookout/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/Rookout/docs/contents/{+path}","compare_url":"https://api.github.com/repos/Rookout/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Rookout/docs/merges","archive_url":"https://api.github.com/repos/Rookout/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Rookout/docs/downloads","issues_url":"https://api.github.com/repos/Rookout/docs/issues{/number}","pulls_url":"https://api.github.com/repos/Rookout/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/Rookout/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/Rookout/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Rookout/docs/labels{/name}","releases_url":"https://api.github.com/repos/Rookout/docs/releases{/id}","deployments_url":"https://api.github.com/repos/Rookout/docs/deployments","created_at":"2018-03-26T15:08:55Z","updated_at":"2018-09-05T15:57:09Z","pushed_at":"2018-09-13T15:15:16Z","git_url":"git://github.com/Rookout/docs.git","ssh_url":"git@github.com:Rookout/docs.git","clone_url":"https://github.com/Rookout/docs.git","svn_url":"https://github.com/Rookout/docs","homepage":"https://docs.rookout.com","size":1315,"stargazers_count":3,"watchers_count":3,"language":"CSS","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2,"mirror_url":null,"archived":false,"open_issues_count":1,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":2,"open_issues":1,"watchers":3,"default_branch":"master"}},"base":{"label":"Rookout:master","ref":"master","sha":"95dd752f2b6786cb5a2cae86eb43b30081985937","user":{"login":"Rookout","id":30212996,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwMjEyOTk2","avatar_url":"https://avatars0.githubusercontent.com/u/30212996?v=4","gravatar_id":"","url":"https://api.github.com/users/Rookout","html_url":"https://github.com/Rookout","followers_url":"https://api.github.com/users/Rookout/followers","following_url":"https://api.github.com/users/Rookout/following{/other_user}","gists_url":"https://api.github.com/users/Rookout/gists{/gist_id}","starred_url":"https://api.github.com/users/Rookout/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rookout/subscriptions","organizations_url":"https://api.github.com/users/Rookout/orgs","repos_url":"https://api.github.com/users/Rookout/repos","events_url":"https://api.github.com/users/Rookout/events{/privacy}","received_events_url":"https://api.github.com/users/Rookout/received_events","type":"Organization","site_admin":false},"repo":{"id":126847086,"node_id":"MDEwOlJlcG9zaXRvcnkxMjY4NDcwODY=","name":"docs","full_name":"Rookout/docs","private":false,"owner":{"login":"Rookout","id":30212996,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwMjEyOTk2","avatar_url":"https://avatars0.githubusercontent.com/u/30212996?v=4","gravatar_id":"","url":"https://api.github.com/users/Rookout","html_url":"https://github.com/Rookout","followers_url":"https://api.github.com/users/Rookout/followers","following_url":"https://api.github.com/users/Rookout/following{/other_user}","gists_url":"https://api.github.com/users/Rookout/gists{/gist_id}","starred_url":"https://api.github.com/users/Rookout/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rookout/subscriptions","organizations_url":"https://api.github.com/users/Rookout/orgs","repos_url":"https://api.github.com/users/Rookout/repos","events_url":"https://api.github.com/users/Rookout/events{/privacy}","received_events_url":"https://api.github.com/users/Rookout/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/Rookout/docs","description":"Rookout Documentation","fork":false,"url":"https://api.github.com/repos/Rookout/docs","forks_url":"https://api.github.com/repos/Rookout/docs/forks","keys_url":"https://api.github.com/repos/Rookout/docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Rookout/docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Rookout/docs/teams","hooks_url":"https://api.github.com/repos/Rookout/docs/hooks","issue_events_url":"https://api.github.com/repos/Rookout/docs/issues/events{/number}","events_url":"https://api.github.com/repos/Rookout/docs/events","assignees_url":"https://api.github.com/repos/Rookout/docs/assignees{/user}","branches_url":"https://api.github.com/repos/Rookout/docs/branches{/branch}","tags_url":"https://api.github.com/repos/Rookout/docs/tags","blobs_url":"https://api.github.com/repos/Rookout/docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Rookout/docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Rookout/docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/Rookout/docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Rookout/docs/statuses/{sha}","languages_url":"https://api.github.com/repos/Rookout/docs/languages","stargazers_url":"https://api.github.com/repos/Rookout/docs/stargazers","contributors_url":"https://api.github.com/repos/Rookout/docs/contributors","subscribers_url":"https://api.github.com/repos/Rookout/docs/subscribers","subscription_url":"https://api.github.com/repos/Rookout/docs/subscription","commits_url":"https://api.github.com/repos/Rookout/docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/Rookout/docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/Rookout/docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/Rookout/docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/Rookout/docs/contents/{+path}","compare_url":"https://api.github.com/repos/Rookout/docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Rookout/docs/merges","archive_url":"https://api.github.com/repos/Rookout/docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Rookout/docs/downloads","issues_url":"https://api.github.com/repos/Rookout/docs/issues{/number}","pulls_url":"https://api.github.com/repos/Rookout/docs/pulls{/number}","milestones_url":"https://api.github.com/repos/Rookout/docs/milestones{/number}","notifications_url":"https://api.github.com/repos/Rookout/docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Rookout/docs/labels{/name}","releases_url":"https://api.github.com/repos/Rookout/docs/releases{/id}","deployments_url":"https://api.github.com/repos/Rookout/docs/deployments","created_at":"2018-03-26T15:08:55Z","updated_at":"2018-09-05T15:57:09Z","pushed_at":"2018-09-13T15:15:16Z","git_url":"git://github.com/Rookout/docs.git","ssh_url":"git@github.com:Rookout/docs.git","clone_url":"https://github.com/Rookout/docs.git","svn_url":"https://github.com/Rookout/docs","homepage":"https://docs.rookout.com","size":1315,"stargazers_count":3,"watchers_count":3,"language":"CSS","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2,"mirror_url":null,"archived":false,"open_issues_count":1,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":2,"open_issues":1,"watchers":3,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Rookout/docs/pulls/52"},"html":{"href":"https://github.com/Rookout/docs/pull/52"},"issue":{"href":"https://api.github.com/repos/Rookout/docs/issues/52"},"comments":{"href":"https://api.github.com/repos/Rookout/docs/issues/52/comments"},"review_comments":{"href":"https://api.github.com/repos/Rookout/docs/pulls/52/comments"},"review_comment":{"href":"https://api.github.com/repos/Rookout/docs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Rookout/docs/pulls/52/commits"},"statuses":{"href":"https://api.github.com/repos/Rookout/docs/statuses/a786449d01d1ed19ee986d06a1e1e6bcb735a188"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"Rookeret73"}}