Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(48)

Side by Side Diff: appengine/findit/crash/findit_for_client.py

Issue 2322133002: [Findit] Add cracas_crash_analysis (Closed)
Patch Set: Overwrite _CreateKey method. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Copyright 2016 The Chromium Authors. All rights reserved. 1 # Copyright 2016 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import copy 5 import copy
6 import json 6 import json
7 import logging 7 import logging
8 8
9 from google.appengine.api import app_identity 9 from google.appengine.api import app_identity
10 from google.appengine.ext import ndb 10 from google.appengine.ext import ndb
11 11
12 from common import time_util 12 from common import time_util
13 from crash import findit_for_fracas 13 from crash import findit_for_fracas
14 from crash.type_enums import CrashClient 14 from crash.type_enums import CrashClient
15 from model import analysis_status 15 from model import analysis_status
16 from model.crash.crash_config import CrashConfig 16 from model.crash.crash_config import CrashConfig
17 from model.crash.fracas_crash_analysis import FracasCrashAnalysis 17 from model.crash.fracas_crash_analysis import FracasCrashAnalysis
18 from model.crash.cracas_crash_analysis import CracasCrashAnalysis
18 19
19 _FINDIT_FRACAS_FEEDBACK_URL_TEMPLATE = '%s/crash/fracas-result-feedback?key=%s' 20 _FINDIT_FRACAS_FEEDBACK_URL_TEMPLATE = '%s/crash/fracas-result-feedback?key=%s'
20 21
21 22
22 def CheckPolicyForClient(crash_identifiers, chrome_version, signature, 23 def CheckPolicyForClient(crash_identifiers, chrome_version, signature,
23 client_id, platform, stack_trace, customized_data): 24 client_id, platform, stack_trace, customized_data):
24 """Checks if the args pass the client policy or not, update the parameters 25 """Checks if the args pass the client policy or not, update the parameters
25 if needed.""" 26 if needed."""
26 crash_config = CrashConfig.Get() 27 crash_config = CrashConfig.Get()
27 28
(...skipping 30 matching lines...) Expand all
58 59
59 return True, (crash_identifiers, chrome_version, signature, client_id, 60 return True, (crash_identifiers, chrome_version, signature, client_id,
60 platform, stack_trace, customized_data) 61 platform, stack_trace, customized_data)
61 62
62 63
63 def GetAnalysisForClient(crash_identifiers, client_id): 64 def GetAnalysisForClient(crash_identifiers, client_id):
64 analysis = None 65 analysis = None
65 if client_id == CrashClient.FRACAS: 66 if client_id == CrashClient.FRACAS:
66 analysis = FracasCrashAnalysis.Get(crash_identifiers) 67 analysis = FracasCrashAnalysis.Get(crash_identifiers)
67 elif client_id == CrashClient.CRACAS: # pragma: no cover. 68 elif client_id == CrashClient.CRACAS: # pragma: no cover.
68 # TODO(katesonia): Add CracasCrashAnalysis model. 69 analysis = CracasCrashAnalysis.Get(crash_identifiers)
69 pass
70 elif client_id == CrashClient.CLUSTERFUZZ: # pragma: no cover. 70 elif client_id == CrashClient.CLUSTERFUZZ: # pragma: no cover.
71 # TODO(katesonia): Add ClusterfuzzCrashAnalysis model. 71 # TODO(katesonia): Add ClusterfuzzCrashAnalysis model.
72 pass 72 pass
73 73
74 return analysis 74 return analysis
75 75
76 76
77 @ndb.transactional 77 @ndb.transactional
78 def ResetAnalysis(analysis, crash_identifiers, chrome_version, signature, 78 def ResetAnalysis(analysis, crash_identifiers, chrome_version, signature,
79 client_id, platform, stack_trace, customized_data): 79 client_id, platform, stack_trace, customized_data):
80 """Resets analysis to be analyzed.""" 80 """Resets analysis to be analyzed."""
81 if not analysis: 81 if not analysis:
82 # A new analysis is needed if there is no analysis. 82 # A new analysis is needed if there is no analysis.
83 if client_id == CrashClient.FRACAS: 83 if client_id == CrashClient.FRACAS:
84 analysis = FracasCrashAnalysis.Create(crash_identifiers) 84 analysis = FracasCrashAnalysis.Create(crash_identifiers)
85 elif client_id == CrashClient.CRACAS: # pragma: no cover. 85 elif client_id == CrashClient.CRACAS: # pragma: no cover.
86 # TODO(katesonia): define CracasCrashAnalysis. 86 analysis = CracasCrashAnalysis.Create(crash_identifiers)
87 pass
88 elif client_id == CrashClient.CLUSTERFUZZ: # pragma: no cover. 87 elif client_id == CrashClient.CLUSTERFUZZ: # pragma: no cover.
89 # TODO(katesonia): define ClusterfuzzCrashAnalysis. 88 # TODO(katesonia): define ClusterfuzzCrashAnalysis.
90 pass 89 pass
91 90
92 analysis.Reset() 91 analysis.Reset()
93 92
94 # Set common properties. 93 # Set common properties.
95 analysis.crashed_version = chrome_version 94 analysis.crashed_version = chrome_version
96 analysis.stack_trace = stack_trace 95 analysis.stack_trace = stack_trace
97 analysis.signature = signature 96 analysis.signature = signature
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
144 if (analysis.client_id == CrashClient.FRACAS or 143 if (analysis.client_id == CrashClient.FRACAS or
145 analysis.client_id == CrashClient.CRACAS): 144 analysis.client_id == CrashClient.CRACAS):
146 result, tags = findit_for_fracas.FindCulpritForChromeCrash( 145 result, tags = findit_for_fracas.FindCulpritForChromeCrash(
147 analysis.signature, analysis.platform, analysis.stack_trace, 146 analysis.signature, analysis.platform, analysis.stack_trace,
148 analysis.crashed_version, analysis.historical_metadata) 147 analysis.crashed_version, analysis.historical_metadata)
149 elif analysis.client_id == CrashClient.CLUSTERFUZZ: # pragma: no cover. 148 elif analysis.client_id == CrashClient.CLUSTERFUZZ: # pragma: no cover.
150 # TODO(katesonia): Implement findit_for_clusterfuzz. 149 # TODO(katesonia): Implement findit_for_clusterfuzz.
151 pass 150 pass
152 151
153 return result, tags 152 return result, tags
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698