本文整理汇总了Python中raven.contrib.django.models.client.captureMessage函数的典型用法代码示例。如果您正苦于以下问题:Python captureMessage函数的具体用法?Python captureMessage怎么用?Python captureMessage使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了captureMessage函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: csp_violation_capture
def csp_violation_capture(request):
# HT @glogiotatidis https://github.com/mozmar/lumbergh/pull/180/
if not settings.CSP_REPORT_ENABLE:
# mitigation option for a flood of violation reports
return HttpResponse()
data = client.get_data_from_request(request)
data.update({
'level': logging.INFO,
'logger': 'CSP',
})
try:
csp_data = json.loads(request.body.decode())
except ValueError:
# Cannot decode CSP violation data, ignore
return HttpResponseBadRequest('Invalid CSP Report')
try:
blocked_uri = csp_data['csp-report']['blocked-uri']
except KeyError:
# Incomplete CSP report
return HttpResponseBadRequest('Incomplete CSP Report')
client.captureMessage(message='CSP Violation: {}'.format(blocked_uri),
data=data)
return HttpResponse('Captured CSP violation, thanks for reporting.')
开发者ID:mozilla,项目名称:standup,代码行数:27,代码来源:views.py
示例2: test_simple
def test_simple(self):
assert client.__class__ is SentryInternalClient
with self.settings(CELERY_ALWAYS_EAGER=True):
client.captureMessage('internal client test')
event = Event.objects.get()
assert event.message == 'internal client test'
开发者ID:Juraldinio,项目名称:sentry,代码行数:8,代码来源:test_raven.py
示例3: test_simple
def test_simple(self):
assert client.__class__ is SentryInternalClient
with self.tasks():
client.captureMessage('internal client test')
event = Event.objects.get()
assert event.message == 'internal client test'
开发者ID:AyrtonRicardo,项目名称:sentry,代码行数:8,代码来源:test_raven.py
示例4: test_simple
def test_simple(self, send):
assert client.__class__ is SentryInternalClient
with self.tasks():
client.captureMessage("internal client test")
event = Event.objects.get()
assert event.data["sentry.interfaces.Message"]["message"] == "internal client test"
assert send.call_count == 0
开发者ID:pythorn,项目名称:sentry,代码行数:9,代码来源:test_raven.py
示例5: test_simple
def test_simple(self, send):
assert client.__class__ is SentryInternalClient
with self.tasks():
client.captureMessage('internal client test')
event = Event.objects.get()
assert event.data['sentry.interfaces.Message']['message'] == \
'internal client test'
assert send.call_count == 0
开发者ID:binlee1990,项目名称:sentry,代码行数:10,代码来源:test_raven.py
示例6: test_upstream
def test_upstream(self, send):
with self.dsn('http://foo:[email protected]/1'):
with self.options({'sentry:install-id': 'abc123'}):
with self.tasks():
client.captureMessage('internal client test')
event = Event.objects.get()
assert event.message == 'internal client test'
# Make sure that the event also got sent upstream
assert send.call_count == 1
_, kwargs = send.call_args
# and got tagged properly
assert kwargs['tags']['install-id'] == 'abc123'
开发者ID:280185386,项目名称:sentry,代码行数:14,代码来源:test_raven.py
示例7: test_upstream
def test_upstream(self, send):
with self.dsn("http://foo:[email protected]e.com/1"):
with self.options({"sentry:install-id": "abc123"}):
with self.tasks():
client.captureMessage("internal client test")
event = Event.objects.get()
assert event.data["sentry.interfaces.Message"]["message"] == "internal client test"
# Make sure that the event also got sent upstream
assert send.call_count == 1
_, kwargs = send.call_args
# and got tagged properly
assert kwargs["tags"]["install-id"] == "abc123"
开发者ID:pythorn,项目名称:sentry,代码行数:14,代码来源:test_raven.py
示例8: check_reporting
def check_reporting(app_configs, **kwargs):
errors = []
current_user = pwd.getpwuid(os.getuid()).pw_name
# Get all configs if we don't get a specific set
if not app_configs:
app_configs = apps.apps.app_configs.values()
raven_installed = bool(list(filter(lambda app: app.name == "raven.contrib.django.raven_compat", app_configs)))
if not raven_installed:
errors.append(W001)
else:
raven_config = getattr(settings, 'RAVEN_CONFIG', None)
if raven_config is None or not isinstance(raven_config, dict):
errors.append(E001)
try:
# noinspection PyPackageRequirements,PyUnresolvedReferences
from raven.contrib.django.models import client
# So we are duplicating code from manage.py raven test here...
if not all([client.servers, client.project, client.public_key, client.secret_key]):
errors.append(E002)
if not client.is_enabled():
errors.append(E003)
else:
# Test sending
data = {
'culprit': 'preflight.checks.check_reporting',
'logger': 'raven.test',
'request': {
'method': 'GET',
'url': 'http://example.com',
}
}
ident = client.get_ident(client.captureMessage(
message='This is a test message generated using ``raven test``',
data=data,
level=logging.INFO,
stack=True,
tags={},
extra={
'user': current_user,
'loadavg': os.getloadavg(),
},
))
if client.state.did_fail():
errors.append(E004)
except ImportError:
errors.append(E005)
# TODO: check if we actually log something
return errors
开发者ID:bpeschier,项目名称:django-preflight-checks,代码行数:59,代码来源:reporting.py
示例9: test_simple
def test_simple(self, send):
assert client.__class__ is SentryInternalClient
with self.tasks():
event_id = client.captureMessage('internal client test')
event = Event.objects.get()
assert event.project_id == settings.SENTRY_PROJECT
assert event.event_id == event_id
assert event.data['sentry.interfaces.Message']['message'] == \
'internal client test'
assert send.call_count == 0
开发者ID:mjumbewu,项目名称:sentry,代码行数:12,代码来源:test_raven.py
示例10: csp_violation_capture
def csp_violation_capture(request):
data = sentry_client.get_data_from_request(request)
data.update({
'level': logging.INFO,
'logger': 'CSP',
})
try:
csp_data = json.loads(request.body)
except ValueError:
# Cannot decode CSP violation data, ignore
return HttpResponseBadRequest('Invalid CSP Report')
try:
blocked_uri = csp_data['csp-report']['blocked-uri']
except KeyError:
# Incomplete CSP report
return HttpResponseBadRequest('Incomplete CSP Report')
sentry_client.captureMessage(
message='CSP Violation: {}'.format(blocked_uri),
data=data)
return HttpResponse('Captured CSP violation, thanks for reporting.')
开发者ID:akatsoulas,项目名称:snippets-service,代码行数:23,代码来源:views.py
示例11: process_response
def process_response(self, request, response):
if response.status_code != 404 or _is_ignorable_404(request.get_full_path()):
return response
data = client.get_data_from_request(request)
data.update({
'level': logging.INFO,
'logger': 'http404',
})
result = client.captureMessage(message='Page Not Found: %s' % request.build_absolute_uri(), data=data)
request.sentry = {
'project_id': data.get('project', client.project),
'id': client.get_ident(result),
}
return response
开发者ID:MyCollege,项目名称:raven,代码行数:14,代码来源:__init__.py
示例12: test_upstream
def test_upstream(self, send):
with self.dsn('http://foo:[email protected]/1'):
with self.options({'sentry:install-id': 'abc123'}):
with self.tasks():
event_id = client.captureMessage('internal client test')
event = Event.objects.get()
assert event.project_id == settings.SENTRY_PROJECT
assert event.event_id == event_id
assert event.data['sentry.interfaces.Message']['message'] == \
'internal client test'
# Make sure that the event also got sent upstream
assert send.call_count == 1
_, kwargs = send.call_args
# and got tagged properly
assert kwargs['tags']['install-id'] == 'abc123'
开发者ID:mjumbewu,项目名称:sentry,代码行数:17,代码来源:test_raven.py
示例13: test_basic
def test_basic(self, captureMessage):
client.captureMessage(message='foo')
captureMessage.assert_called_once_with(message='foo')
开发者ID:hopecream,项目名称:raven-python,代码行数:3,代码来源:tests.py
示例14: capture_event
def capture_event(request):
client.captureMessage('test')
return HttpResponse('')
开发者ID:ehfeng,项目名称:raven-python,代码行数:3,代码来源:views.py
示例15: handle
def handle(self, *args, **options):
jobs_added = 0
jobs_updated = 0
jobs_removed = 0
job_ids = []
response = requests.get(GREENHOUSE_URL.format(settings.GREENHOUSE_BOARD_TOKEN))
response.raise_for_status()
data = response.json()
for job in data['jobs']:
# Maybe GH sometimes includes jobs with the same ID multiple times
# in the json. Capture the event in Sentry and look the other way.
if job['id'] in job_ids:
client.captureMessage(
message='[GH Sync] Job {} twice in the same json'.format(job['id']),
data={'extra': {'jobs': data['jobs']}})
continue
job_ids.append(job['id'])
job_object, created = (Position.objects
.get_or_create(job_id=job['id'], source='gh'))
departments = job.get('departments', '')
if departments:
department = departments[0]['name'] or ''
else:
department = ''
offices = job.get('offices', '')
if offices:
location = ','.join([office['name'] for office in offices])
else:
location = ''
description = H.unescape(job.get('content', ''))
description = cleaner.clean(description)
# Remove empty paragraphs and h4s and paragraphs with \xa0
# (no-brake space). I ♥ regex
description = re.sub(r'<(p|h4)>([ ]*|(\xa0)+)</(p|h4)>', '', description)
for metadata in job.get('metadata', []):
if metadata.get('name', '') == 'Employment Type':
position_type = metadata['value'] or ''
break
else:
position_type = ''
object_data = {
'title': job['title'],
'department': department,
'location': location,
'description': description,
'position_type': position_type,
'apply_url': job['absolute_url'],
}
changed = False
for key, value in object_data.items():
if getattr(job_object, key, None) != value:
changed = True
setattr(job_object, key, value)
if changed:
if created:
jobs_added += 1
else:
jobs_updated += 1
job_object.save()
positions_to_be_removed = Position.objects.exclude(job_id__in=job_ids, source='gh')
jobs_removed = positions_to_be_removed.count()
positions_to_be_removed.delete()
self.stdout.write(
'Jobs added: {added} updated: {updated} '
'removed: {removed}'.format(added=jobs_added,
updated=jobs_updated,
removed=jobs_removed))
开发者ID:alexgibson,项目名称:lumbergh,代码行数:80,代码来源:sync_greenhouse.py
注:本文中的raven.contrib.django.models.client.captureMessage函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论