Remove unused events/issues code
This commit is contained in:
1 parent
5ada0d6b0d
commit
e6d072e3b3
42 files changed
-5885
No files matched your search
Whitespace-only changes.
@@ -1,188 +0,0 @@
|
||||
# Generated by Django 4.1.3 on 2022-12-10 15:28
|
||||
|
||||
import django.contrib.postgres.fields.hstore
|
||||
import django.contrib.postgres.operations
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
import uuid
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
("issues", "0002_auto_20210219_1931"),
|
||||
(
|
||||
"releases",
|
||||
"0001_squashed_0004_alter_release_id_alter_releasefile_id_and_more",
|
||||
),
|
||||
("issues", "0001_squashed_0010_auto_20210117_1543"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.SeparateDatabaseAndState(
|
||||
state_operations=[
|
||||
migrations.CreateModel(
|
||||
name="Event",
|
||||
fields=[
|
||||
(
|
||||
"event_id",
|
||||
models.UUIDField(
|
||||
default=uuid.uuid4,
|
||||
editable=False,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
),
|
||||
),
|
||||
(
|
||||
"timestamp",
|
||||
models.DateTimeField(
|
||||
blank=True,
|
||||
help_text="Date created as claimed by client it came from",
|
||||
null=True,
|
||||
),
|
||||
),
|
||||
(
|
||||
"created",
|
||||
models.DateTimeField(auto_now_add=True, db_index=True),
|
||||
),
|
||||
("data", models.JSONField()),
|
||||
(
|
||||
"issue",
|
||||
models.ForeignKey(
|
||||
help_text="Sentry calls this a group",
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="issues.issue",
|
||||
),
|
||||
),
|
||||
(
|
||||
"release",
|
||||
models.ForeignKey(
|
||||
blank=True,
|
||||
null=True,
|
||||
on_delete=django.db.models.deletion.SET_NULL,
|
||||
to="releases.release",
|
||||
),
|
||||
),
|
||||
(
|
||||
"tags",
|
||||
models.ManyToManyField(blank=True, to="events.eventtag"),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"ordering": ["-created"],
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="EventTagKey",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.AutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("key", models.CharField(max_length=255, unique=True)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="EventTag",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.AutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("value", models.CharField(max_length=225)),
|
||||
(
|
||||
"key",
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="events.eventtagkey",
|
||||
),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"unique_together": {("key", "value")},
|
||||
},
|
||||
),
|
||||
],
|
||||
),
|
||||
migrations.RunSQL(
|
||||
sql="\nDROP TRIGGER IF EXISTS event_issue_update on events_event;\n",
|
||||
reverse_sql="DROP TRIGGER IF EXISTS event_issue_update on issues_event; DROP FUNCTION IF EXISTS update_issue;",
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="event",
|
||||
name="issue",
|
||||
field=models.ForeignKey(
|
||||
help_text="Sentry calls this a group",
|
||||
null=True,
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="issues.issue",
|
||||
),
|
||||
),
|
||||
migrations.RemoveField(
|
||||
model_name="event",
|
||||
name="tags",
|
||||
),
|
||||
django.contrib.postgres.operations.HStoreExtension(),
|
||||
migrations.AddField(
|
||||
model_name="event",
|
||||
name="tags",
|
||||
field=django.contrib.postgres.fields.hstore.HStoreField(default=dict),
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name="EventTag",
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name="EventTagKey",
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="event",
|
||||
name="errors",
|
||||
field=models.JSONField(
|
||||
blank=True,
|
||||
help_text="Event processing errors from event intake, including validation errors",
|
||||
null=True,
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="event",
|
||||
name="data",
|
||||
field=models.JSONField(help_text="General event data that is searchable"),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="event",
|
||||
name="level",
|
||||
field=models.PositiveSmallIntegerField(
|
||||
choices=[
|
||||
(0, "sample"),
|
||||
(1, "debug"),
|
||||
(2, "info"),
|
||||
(3, "warning"),
|
||||
(4, "error"),
|
||||
(5, "fatal"),
|
||||
],
|
||||
default=4,
|
||||
),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="event",
|
||||
name="issue",
|
||||
field=models.ForeignKey(
|
||||
default=1,
|
||||
help_text="Sentry calls this a group",
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="issues.issue",
|
||||
),
|
||||
preserve_default=False,
|
||||
),
|
||||
]
|
||||
@@ -1,13 +0,0 @@
|
||||
# Generated by Django 5.0.2 on 2024-03-12 13:44
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("events", "0001_squashed_0003_auto_20210219_1951"),
|
||||
("issues", "0013_alter_comment_options_alter_issue_unique_together_and_more"),
|
||||
("issue_events", "0001_initial"),
|
||||
]
|
||||
|
||||
operations = []
|
||||
@@ -1,16 +0,0 @@
|
||||
# Generated by Django 5.0.3 on 2024-03-18 14:30
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('events', '0004_auto_20240312_1344'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.DeleteModel(
|
||||
name='Event',
|
||||
),
|
||||
]
|
||||
Whitespace-only changes.
Whitespace-only changes.
File diff suppressed because it is too large.
Load diff
@@ -1,9 +0,0 @@
|
||||
mdn_sample_csp = {
|
||||
"csp-report": {
|
||||
"document-uri": "http://example.com/signup.html",
|
||||
"referrer": "",
|
||||
"blocked-uri": "http://example.com/css/style.css",
|
||||
"violated-directive": "style-src cdn.example.com",
|
||||
"original-policy": "default-src 'none'; style-src cdn.example.com; report-uri /_/csp-reports",
|
||||
}
|
||||
}
|
||||
@@ -1,103 +0,0 @@
|
||||
{
|
||||
"eventID": "75c941b27a9c4819a374a2f2052279bc",
|
||||
"dist": null,
|
||||
"userReport": null,
|
||||
"projectID": "1",
|
||||
"previousEventID": null,
|
||||
"message": "Blocked 'style' from 'example.com'",
|
||||
"id": "41",
|
||||
"size": 1317,
|
||||
"errors": [],
|
||||
"culprit": "style-src cdn.example.com",
|
||||
"title": "Blocked 'style' from 'example.com'",
|
||||
"platform": "other",
|
||||
"location": "example.com",
|
||||
"nextEventID": null,
|
||||
"type": "csp",
|
||||
"metadata": {
|
||||
"message": "Blocked 'style' from 'example.com'",
|
||||
"uri": "example.com",
|
||||
"directive": "style-src"
|
||||
},
|
||||
"groupingConfig": { "id": "legacy:2019-03-12" },
|
||||
"crashFile": null,
|
||||
"tags": [
|
||||
{
|
||||
"value": "http://example.com/css/style.css",
|
||||
"key": "blocked-uri",
|
||||
"_meta": null
|
||||
},
|
||||
{ "value": "style-src", "key": "effective-directive", "_meta": null },
|
||||
{ "value": "error", "key": "level", "_meta": null },
|
||||
{ "value": "csp", "key": "logger", "_meta": null },
|
||||
{ "value": "http://example.com/signup.html", "key": "url", "_meta": null },
|
||||
{
|
||||
"query": "user.ip:69.197.135.226",
|
||||
"value": "ip:69.197.135.226",
|
||||
"key": "user",
|
||||
"_meta": null
|
||||
}
|
||||
],
|
||||
"dateCreated": "2020-02-06T19:35:11.310Z",
|
||||
"dateReceived": "2020-02-06T19:35:11.310Z",
|
||||
"user": {
|
||||
"username": null,
|
||||
"name": null,
|
||||
"ip_address": "69.197.135.226",
|
||||
"email": null,
|
||||
"data": {},
|
||||
"id": null
|
||||
},
|
||||
"entries": [
|
||||
{
|
||||
"type": "message",
|
||||
"data": { "formatted": "Blocked 'style' from 'example.com'" }
|
||||
},
|
||||
{
|
||||
"type": "csp",
|
||||
"data": {
|
||||
"blocked_uri": "http://example.com/css/style.css",
|
||||
"referrer": "",
|
||||
"violated_directive": "style-src cdn.example.com",
|
||||
"document_uri": "http://example.com/signup.html",
|
||||
"original_policy": "default-src 'none'; style-src cdn.example.com; report-uri /_/csp-reports",
|
||||
"effective_directive": "style-src"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "request",
|
||||
"data": {
|
||||
"fragment": "",
|
||||
"cookies": [],
|
||||
"inferredContentType": null,
|
||||
"env": null,
|
||||
"headers": [["User-Agent", "axios/0.19.0"]],
|
||||
"url": "http://example.com/signup.html",
|
||||
"query": [],
|
||||
"data": null,
|
||||
"method": null
|
||||
}
|
||||
}
|
||||
],
|
||||
"packages": {},
|
||||
"sdk": {
|
||||
"version": "0.19.0",
|
||||
"name": "axios",
|
||||
"upstream": { "url": null, "isNewer": false, "name": "axios" }
|
||||
},
|
||||
"_meta": {
|
||||
"user": null,
|
||||
"context": null,
|
||||
"entries": {},
|
||||
"contexts": null,
|
||||
"message": null,
|
||||
"packages": null,
|
||||
"tags": {},
|
||||
"sdk": null
|
||||
},
|
||||
"contexts": {},
|
||||
"fingerprints": ["d5345fd5e29cfa4c251224cb7a035edc"],
|
||||
"context": {},
|
||||
"release": null,
|
||||
"groupID": "12"
|
||||
}
|
||||
@@ -1,845 +0,0 @@
|
||||
{
|
||||
"eventID": "9cccfef1b2e64e7ba09120418acd402f",
|
||||
"dist": null,
|
||||
"userReport": null,
|
||||
"projectID": "1855811",
|
||||
"previousEventID": null,
|
||||
"message": "",
|
||||
"id": "9cccfef1b2e64e7ba09120418acd402f",
|
||||
"size": 20065,
|
||||
"errors": [],
|
||||
"culprit": "/template-error/",
|
||||
"title": "NoReverseMatch: Reverse for 'nope' not found. 'nope' is not a valid view function or pattern name.",
|
||||
"sdkUpdates": [],
|
||||
"platform": "python",
|
||||
"location": "django/urls/resolvers.py",
|
||||
"nextEventID": null,
|
||||
"type": "error",
|
||||
"metadata": {
|
||||
"function": "_reverse_with_prefix",
|
||||
"type": "NoReverseMatch",
|
||||
"value": "Reverse for 'nope' not found. 'nope' is not a valid view function or pattern name.",
|
||||
"filename": "django/urls/resolvers.py"
|
||||
},
|
||||
"groupingConfig": {
|
||||
"enhancements": "eJybzDhxY3J-bm5-npWRgaGlroGxrpHxBABcTQcY",
|
||||
"id": "newstyle:2019-10-29"
|
||||
},
|
||||
"crashFile": null,
|
||||
"tags": [
|
||||
{ "value": "Firefox 72.0", "key": "browser", "_meta": null },
|
||||
{ "value": "Firefox", "key": "browser.name", "_meta": null },
|
||||
{ "value": "Ubuntu", "key": "client_os.name", "_meta": null },
|
||||
{ "value": "no", "key": "handled", "_meta": null },
|
||||
{ "value": "error", "key": "level", "_meta": null },
|
||||
{ "value": "django", "key": "mechanism", "_meta": null },
|
||||
{ "value": "CPython 3.8.1", "key": "runtime", "_meta": null },
|
||||
{ "value": "CPython", "key": "runtime.name", "_meta": null },
|
||||
{ "value": "210ecca56d59", "key": "server_name", "_meta": null },
|
||||
{
|
||||
"value": "054a97f6e65b4b00a4f44c7befe60632",
|
||||
"key": "trace",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "054a97f6e65b4b00a4f44c7befe60632-91c32e43e3ca1f52",
|
||||
"key": "trace.ctx",
|
||||
"_meta": null
|
||||
},
|
||||
{ "value": "91c32e43e3ca1f52", "key": "trace.span", "_meta": null },
|
||||
{ "value": "/template-error/", "key": "transaction", "_meta": null },
|
||||
{
|
||||
"value": "http://localhost:8001/template-error/",
|
||||
"key": "url",
|
||||
"_meta": null
|
||||
}
|
||||
],
|
||||
"dateCreated": "2020-01-11T17:04:31.306588Z",
|
||||
"dateReceived": "2020-01-11T17:04:31.672903Z",
|
||||
"user": null,
|
||||
"entries": [
|
||||
{
|
||||
"type": "exception",
|
||||
"data": {
|
||||
"values": [
|
||||
{
|
||||
"stacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"function": "inner",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"get_response": "<bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fc4b9f92580>>",
|
||||
"request": "<WSGIRequest: GET '/template-error/'>",
|
||||
"exc": "NoReverseMatch(\"Reverse for 'nope' not found. 'nope' is not a valid view function or pattern name.\")"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/core/handlers/exception.py",
|
||||
"inApp": false,
|
||||
"lineNo": 34,
|
||||
"module": "django.core.handlers.exception",
|
||||
"filename": "django/core/handlers/exception.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[
|
||||
29,
|
||||
" can rely on getting a response instead of an exception."
|
||||
],
|
||||
[30, " \"\"\""],
|
||||
[31, " @wraps(get_response)"],
|
||||
[32, " def inner(request):"],
|
||||
[33, " try:"],
|
||||
[34, " response = get_response(request)"],
|
||||
[35, " except Exception as exc:"],
|
||||
[
|
||||
36,
|
||||
" response = response_for_exception(request, exc)"
|
||||
],
|
||||
[37, " return response"],
|
||||
[38, " return inner"],
|
||||
[39, ""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "_get_response",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"resolver_match": "ResolverMatch(func=errors.views.TemplateErrorView, args=(), kwargs={}, url_name=template_error, app_names=[], namespaces=[], route=template-error/)",
|
||||
"callback_args": [],
|
||||
"middleware_method": "<function CsrfViewMiddleware.process_view at 0x7fc4b913b160>",
|
||||
"self": "<django.core.handlers.wsgi.WSGIHandler object at 0x7fc4b9f92580>",
|
||||
"request": "<WSGIRequest: GET '/template-error/'>",
|
||||
"callback": "<function TemplateErrorView at 0x7fc4b92473a0>",
|
||||
"wrapped_callback": "<function TemplateErrorView at 0x7fc4b92473a0>",
|
||||
"resolver": "<URLResolver 'django_error_factory.urls' (None:None) '^/'>",
|
||||
"callback_kwargs": {},
|
||||
"response": "<TemplateResponse status_code=200, \"text/html; charset=utf-8\">"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py",
|
||||
"inApp": false,
|
||||
"lineNo": 145,
|
||||
"module": "django.core.handlers.base",
|
||||
"filename": "django/core/handlers/base.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[140, " )"],
|
||||
[141, ""],
|
||||
[142, " try:"],
|
||||
[143, " response = response.render()"],
|
||||
[144, " except Exception as e:"],
|
||||
[
|
||||
145,
|
||||
" response = self.process_exception_by_middleware(e, request)"
|
||||
],
|
||||
[146, ""],
|
||||
[147, " return response"],
|
||||
[148, ""],
|
||||
[
|
||||
149,
|
||||
" def process_exception_by_middleware(self, exception, request):"
|
||||
],
|
||||
[150, " \"\"\""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "_get_response",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"resolver_match": "ResolverMatch(func=errors.views.TemplateErrorView, args=(), kwargs={}, url_name=template_error, app_names=[], namespaces=[], route=template-error/)",
|
||||
"callback_args": [],
|
||||
"middleware_method": "<function CsrfViewMiddleware.process_view at 0x7fc4b913b160>",
|
||||
"self": "<django.core.handlers.wsgi.WSGIHandler object at 0x7fc4b9f92580>",
|
||||
"request": "<WSGIRequest: GET '/template-error/'>",
|
||||
"callback": "<function TemplateErrorView at 0x7fc4b92473a0>",
|
||||
"wrapped_callback": "<function TemplateErrorView at 0x7fc4b92473a0>",
|
||||
"resolver": "<URLResolver 'django_error_factory.urls' (None:None) '^/'>",
|
||||
"callback_kwargs": {},
|
||||
"response": "<TemplateResponse status_code=200, \"text/html; charset=utf-8\">"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py",
|
||||
"inApp": false,
|
||||
"lineNo": 143,
|
||||
"module": "django.core.handlers.base",
|
||||
"filename": "django/core/handlers/base.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[
|
||||
138,
|
||||
" \"HttpResponse object. It returned None instead.\""
|
||||
],
|
||||
[
|
||||
139,
|
||||
" % (middleware_method.__self__.__class__.__name__)"
|
||||
],
|
||||
[140, " )"],
|
||||
[141, ""],
|
||||
[142, " try:"],
|
||||
[143, " response = response.render()"],
|
||||
[144, " except Exception as e:"],
|
||||
[
|
||||
145,
|
||||
" response = self.process_exception_by_middleware(e, request)"
|
||||
],
|
||||
[146, ""],
|
||||
[147, " return response"],
|
||||
[148, ""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "render",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"self": "<TemplateResponse status_code=200, \"text/html; charset=utf-8\">",
|
||||
"retval": "<TemplateResponse status_code=200, \"text/html; charset=utf-8\">"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/template/response.py",
|
||||
"inApp": false,
|
||||
"lineNo": 105,
|
||||
"module": "django.template.response",
|
||||
"filename": "django/template/response.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[100, ""],
|
||||
[101, " Return the baked response instance."],
|
||||
[102, " \"\"\""],
|
||||
[103, " retval = self"],
|
||||
[104, " if not self._is_rendered:"],
|
||||
[105, " self.content = self.rendered_content"],
|
||||
[
|
||||
106,
|
||||
" for post_callback in self._post_render_callbacks:"
|
||||
],
|
||||
[107, " newretval = post_callback(retval)"],
|
||||
[108, " if newretval is not None:"],
|
||||
[109, " retval = newretval"],
|
||||
[110, " return retval"]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "rendered_content",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"self": "<TemplateResponse status_code=200, \"text/html; charset=utf-8\">",
|
||||
"template": "<django.template.backends.django.Template object at 0x7fc4b90a8880>",
|
||||
"context": {
|
||||
"view": "<errors.views.TemplateErrorView object at 0x7fc4b90a84c0>"
|
||||
}
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/template/response.py",
|
||||
"inApp": false,
|
||||
"lineNo": 83,
|
||||
"module": "django.template.response",
|
||||
"filename": "django/template/response.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[
|
||||
78,
|
||||
" response content, you must either call render(), or set the"
|
||||
],
|
||||
[
|
||||
79,
|
||||
" content explicitly using the value of this property."
|
||||
],
|
||||
[80, " \"\"\""],
|
||||
[
|
||||
81,
|
||||
" template = self.resolve_template(self.template_name)"
|
||||
],
|
||||
[
|
||||
82,
|
||||
" context = self.resolve_context(self.context_data)"
|
||||
],
|
||||
[
|
||||
83,
|
||||
" return template.render(context, self._request)"
|
||||
],
|
||||
[84, ""],
|
||||
[85, " def add_post_render_callback(self, callback):"],
|
||||
[86, " \"\"\"Add a new post-rendering callback."],
|
||||
[87, ""],
|
||||
[88, " If the response has already been rendered,"]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "render",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"self": "<django.template.backends.django.Template object at 0x7fc4b90a8880>",
|
||||
"request": "<WSGIRequest: GET '/template-error/'>",
|
||||
"context": "[{'True': True, 'False': False, 'None': None}, {}, {}, {'view': <errors.views.TemplateErrorView object at 0x7fc4b90a84c0>}]"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/template/backends/django.py",
|
||||
"inApp": false,
|
||||
"lineNo": 61,
|
||||
"module": "django.template.backends.django",
|
||||
"filename": "django/template/backends/django.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[56, " return self.template.origin"],
|
||||
[57, ""],
|
||||
[58, " def render(self, context=None, request=None):"],
|
||||
[
|
||||
59,
|
||||
" context = make_context(context, request, autoescape=self.backend.engine.autoescape)"
|
||||
],
|
||||
[60, " try:"],
|
||||
[61, " return self.template.render(context)"],
|
||||
[62, " except TemplateDoesNotExist as exc:"],
|
||||
[63, " reraise(exc, self.backend)"],
|
||||
[64, ""],
|
||||
[65, ""],
|
||||
[66, "def copy_exception(exc, backend=None):"]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "render",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"self": "<django.template.base.Template object at 0x7fc4b90a88e0>",
|
||||
"context": "[{'True': True, 'False': False, 'None': None}, {}, {}, {'view': <errors.views.TemplateErrorView object at 0x7fc4b90a84c0>}]"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/template/base.py",
|
||||
"inApp": false,
|
||||
"lineNo": 171,
|
||||
"module": "django.template.base",
|
||||
"filename": "django/template/base.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[
|
||||
166,
|
||||
" \"Display stage -- can be called many times\""
|
||||
],
|
||||
[
|
||||
167,
|
||||
" with context.render_context.push_state(self):"
|
||||
],
|
||||
[168, " if context.template is None:"],
|
||||
[169, " with context.bind_template(self):"],
|
||||
[
|
||||
170,
|
||||
" context.template_name = self.name"
|
||||
],
|
||||
[171, " return self._render(context)"],
|
||||
[172, " else:"],
|
||||
[173, " return self._render(context)"],
|
||||
[174, ""],
|
||||
[175, " def compile_nodelist(self):"],
|
||||
[176, " \"\"\""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "_render",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"self": "<django.template.base.Template object at 0x7fc4b90a88e0>",
|
||||
"context": "[{'True': True, 'False': False, 'None': None}, {}, {}, {'view': <errors.views.TemplateErrorView object at 0x7fc4b90a84c0>}]"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/template/base.py",
|
||||
"inApp": false,
|
||||
"lineNo": 163,
|
||||
"module": "django.template.base",
|
||||
"filename": "django/template/base.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[158, " def __iter__(self):"],
|
||||
[159, " for node in self.nodelist:"],
|
||||
[160, " yield from node"],
|
||||
[161, ""],
|
||||
[162, " def _render(self, context):"],
|
||||
[163, " return self.nodelist.render(context)"],
|
||||
[164, ""],
|
||||
[165, " def render(self, context):"],
|
||||
[
|
||||
166,
|
||||
" \"Display stage -- can be called many times\""
|
||||
],
|
||||
[
|
||||
167,
|
||||
" with context.render_context.push_state(self):"
|
||||
],
|
||||
[168, " if context.template is None:"]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "render",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"node": "<django.template.defaulttags.URLNode object at 0x7fc4b90a87c0>",
|
||||
"bit": "'<a href=\"'",
|
||||
"bits": ["'<a href=\"'"],
|
||||
"self": [
|
||||
"<TextNode: '<a href=\"'>",
|
||||
"<django.template.defaulttags.URLNode object at 0x7fc4b90a87c0>",
|
||||
"<TextNode: '\">'>"
|
||||
],
|
||||
"context": "[{'True': True, 'False': False, 'None': None}, {}, {}, {'view': <errors.views.TemplateErrorView object at 0x7fc4b90a84c0>}]"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/template/base.py",
|
||||
"inApp": false,
|
||||
"lineNo": 936,
|
||||
"module": "django.template.base",
|
||||
"filename": "django/template/base.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[931, ""],
|
||||
[932, " def render(self, context):"],
|
||||
[933, " bits = []"],
|
||||
[934, " for node in self:"],
|
||||
[935, " if isinstance(node, Node):"],
|
||||
[
|
||||
936,
|
||||
" bit = node.render_annotated(context)"
|
||||
],
|
||||
[937, " else:"],
|
||||
[938, " bit = node"],
|
||||
[939, " bits.append(str(bit))"],
|
||||
[940, " return mark_safe(''.join(bits))"],
|
||||
[941, ""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": null,
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": null,
|
||||
"package": null,
|
||||
"absPath": "/code/errors/templates/template_error.html",
|
||||
"inApp": true,
|
||||
"lineNo": 1,
|
||||
"module": null,
|
||||
"filename": "/code/errors/templates/template_error.html",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[1, "<a href="{% url 'nope' %}">"]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "render_annotated",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"self": "<django.template.defaulttags.URLNode object at 0x7fc4b90a87c0>",
|
||||
"context": "[{'True': True, 'False': False, 'None': None}, {}, {}, {'view': <errors.views.TemplateErrorView object at 0x7fc4b90a84c0>}]"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/template/base.py",
|
||||
"inApp": false,
|
||||
"lineNo": 903,
|
||||
"module": "django.template.base",
|
||||
"filename": "django/template/base.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[
|
||||
898,
|
||||
" rendering, the exception is annotated with contextual line information"
|
||||
],
|
||||
[
|
||||
899,
|
||||
" where it occurred in the template. For internal usage this method is"
|
||||
],
|
||||
[
|
||||
900,
|
||||
" preferred over using the render method directly."
|
||||
],
|
||||
[901, " \"\"\""],
|
||||
[902, " try:"],
|
||||
[903, " return self.render(context)"],
|
||||
[904, " except Exception as e:"],
|
||||
[
|
||||
905,
|
||||
" if context.template.engine.debug and not hasattr(e, 'template_debug'):"
|
||||
],
|
||||
[
|
||||
906,
|
||||
" e.template_debug = context.render_context.template.get_exception_info(e, self.token)"
|
||||
],
|
||||
[907, " raise"],
|
||||
[908, ""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "render",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"reverse": "<function reverse at 0x7fc4ba161820>",
|
||||
"url": "''",
|
||||
"self": "<django.template.defaulttags.URLNode object at 0x7fc4b90a87c0>",
|
||||
"args": [],
|
||||
"current_app": "''",
|
||||
"view_name": "'nope'",
|
||||
"context": "[{'True': True, 'False': False, 'None': None}, {}, {}, {'view': <errors.views.TemplateErrorView object at 0x7fc4b90a84c0>}]",
|
||||
"kwargs": {},
|
||||
"NoReverseMatch": "<class 'django.urls.exceptions.NoReverseMatch'>"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/template/defaulttags.py",
|
||||
"inApp": false,
|
||||
"lineNo": 443,
|
||||
"module": "django.template.defaulttags",
|
||||
"filename": "django/template/defaulttags.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[438, " current_app = None"],
|
||||
[
|
||||
439,
|
||||
" # Try to look up the URL. If it fails, raise NoReverseMatch unless the"
|
||||
],
|
||||
[
|
||||
440,
|
||||
" # {% url ... as var %} construct is used, in which case return nothing."
|
||||
],
|
||||
[441, " url = ''"],
|
||||
[442, " try:"],
|
||||
[
|
||||
443,
|
||||
" url = reverse(view_name, args=args, kwargs=kwargs, current_app=current_app)"
|
||||
],
|
||||
[444, " except NoReverseMatch:"],
|
||||
[445, " if self.asvar is None:"],
|
||||
[446, " raise"],
|
||||
[447, ""],
|
||||
[448, " if self.asvar:"]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "reverse",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"current_path": "None",
|
||||
"viewname": "'nope'",
|
||||
"args": [],
|
||||
"current_app": "''",
|
||||
"prefix": "'/'",
|
||||
"resolver": "<URLResolver 'django_error_factory.urls' (None:None) '^/'>",
|
||||
"kwargs": {},
|
||||
"path": [],
|
||||
"urlconf": "'django_error_factory.urls'",
|
||||
"view": "'nope'"
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/urls/base.py",
|
||||
"inApp": false,
|
||||
"lineNo": 87,
|
||||
"module": "django.urls.base",
|
||||
"filename": "django/urls/base.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[82, " else:"],
|
||||
[
|
||||
83,
|
||||
" raise NoReverseMatch(\"%s is not a registered namespace\" % key)"
|
||||
],
|
||||
[84, " if ns_pattern:"],
|
||||
[
|
||||
85,
|
||||
" resolver = get_ns_resolver(ns_pattern, resolver, tuple(ns_converters.items()))"
|
||||
],
|
||||
[86, ""],
|
||||
[
|
||||
87,
|
||||
" return iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs))"
|
||||
],
|
||||
[88, ""],
|
||||
[89, ""],
|
||||
[90, "reverse_lazy = lazy(reverse, str)"],
|
||||
[91, ""],
|
||||
[92, ""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
},
|
||||
{
|
||||
"function": "_reverse_with_prefix",
|
||||
"errors": null,
|
||||
"colNo": null,
|
||||
"vars": {
|
||||
"patterns": [],
|
||||
"_prefix": "'/'",
|
||||
"self": "<URLResolver 'django_error_factory.urls' (None:None) '^/'>",
|
||||
"args": [],
|
||||
"m": "None",
|
||||
"lookup_view_s": "'nope'",
|
||||
"n": "None",
|
||||
"possibilities": [],
|
||||
"lookup_view": "'nope'",
|
||||
"msg": "\"Reverse for 'nope' not found. 'nope' is not a valid view function or pattern name.\""
|
||||
},
|
||||
"package": null,
|
||||
"absPath": "/usr/local/lib/python3.8/site-packages/django/urls/resolvers.py",
|
||||
"inApp": false,
|
||||
"lineNo": 677,
|
||||
"module": "django.urls.resolvers",
|
||||
"filename": "django/urls/resolvers.py",
|
||||
"platform": null,
|
||||
"instructionAddr": null,
|
||||
"context": [
|
||||
[672, " else:"],
|
||||
[673, " msg = ("],
|
||||
[
|
||||
674,
|
||||
" \"Reverse for '%(view)s' not found. '%(view)s' is not \""
|
||||
],
|
||||
[
|
||||
675,
|
||||
" \"a valid view function or pattern name.\" % {'view': lookup_view_s}"
|
||||
],
|
||||
[676, " )"],
|
||||
[677, " raise NoReverseMatch(msg)"]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"trust": null,
|
||||
"symbol": null,
|
||||
"rawFunction": null
|
||||
}
|
||||
],
|
||||
"framesOmitted": null,
|
||||
"registers": null,
|
||||
"hasSystemFrames": true
|
||||
},
|
||||
"module": "django.urls.exceptions",
|
||||
"rawStacktrace": null,
|
||||
"mechanism": { "type": "django", "handled": false },
|
||||
"threadId": null,
|
||||
"value": "Reverse for 'nope' not found. 'nope' is not a valid view function or pattern name.",
|
||||
"type": "NoReverseMatch"
|
||||
}
|
||||
],
|
||||
"excOmitted": null,
|
||||
"hasSystemFrames": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "request",
|
||||
"data": {
|
||||
"fragment": null,
|
||||
"cookies": [],
|
||||
"inferredContentType": "text/plain",
|
||||
"env": { "SERVER_PORT": "8001", "SERVER_NAME": "210ecca56d59" },
|
||||
"headers": [
|
||||
[
|
||||
"Accept",
|
||||
"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"
|
||||
],
|
||||
["Accept-Encoding", "gzip, deflate"],
|
||||
["Accept-Language", "en-US,en;q=0.5"],
|
||||
["Connection", "keep-alive"],
|
||||
["Content-Length", ""],
|
||||
["Content-Type", "text/plain"],
|
||||
["Dnt", "1"],
|
||||
["Host", "localhost:8001"],
|
||||
["Referer", "http://localhost:8001/"],
|
||||
["Upgrade-Insecure-Requests", "1"],
|
||||
[
|
||||
"User-Agent",
|
||||
"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0"
|
||||
]
|
||||
],
|
||||
"url": "http://localhost:8001/template-error/",
|
||||
"query": [],
|
||||
"data": null,
|
||||
"method": "GET"
|
||||
}
|
||||
}
|
||||
],
|
||||
"packages": {
|
||||
"toml": "0.10.0",
|
||||
"cffi": "1.13.2",
|
||||
"ipython-genutils": "0.2.0",
|
||||
"wheel": "0.33.6",
|
||||
"pygments": "2.5.2",
|
||||
"cleo": "0.7.6",
|
||||
"pip": "19.3.1",
|
||||
"prompt-toolkit": "3.0.2",
|
||||
"parso": "0.5.2",
|
||||
"jeepney": "0.4.2",
|
||||
"html5lib": "1.0.1",
|
||||
"appdirs": "1.4.3",
|
||||
"requests-toolbelt": "0.8.0",
|
||||
"regex": "2020.1.8",
|
||||
"pastel": "0.1.1",
|
||||
"msgpack": "0.6.2",
|
||||
"pexpect": "4.7.0",
|
||||
"sentry-sdk": "0.14.0",
|
||||
"ipdb": "0.12.3",
|
||||
"six": "1.13.0",
|
||||
"poetry": "1.0.0",
|
||||
"ptyprocess": "0.6.0",
|
||||
"click": "7.0",
|
||||
"jedi": "0.15.2",
|
||||
"traitlets": "4.3.3",
|
||||
"asgiref": "3.2.3",
|
||||
"cachy": "0.3.0",
|
||||
"pathspec": "0.7.0",
|
||||
"cachecontrol": "0.12.6",
|
||||
"certifi": "2019.11.28",
|
||||
"jsonschema": "3.2.0",
|
||||
"backcall": "0.1.0",
|
||||
"cryptography": "2.8",
|
||||
"sqlparse": "0.3.0",
|
||||
"pycparser": "2.19",
|
||||
"secretstorage": "3.1.1",
|
||||
"urllib3": "1.25.7",
|
||||
"webencodings": "0.5.1",
|
||||
"pytz": "2019.3",
|
||||
"clikit": "0.4.1",
|
||||
"ipython": "7.11.1",
|
||||
"lockfile": "0.12.2",
|
||||
"pickleshare": "0.7.5",
|
||||
"decorator": "4.4.1",
|
||||
"tomlkit": "0.5.8",
|
||||
"typed-ast": "1.4.0",
|
||||
"keyring": "19.3.0",
|
||||
"wcwidth": "0.1.8",
|
||||
"django": "3.0.2",
|
||||
"pyrsistent": "0.14.11",
|
||||
"pyparsing": "2.4.6",
|
||||
"pylev": "1.3.0",
|
||||
"chardet": "3.0.4",
|
||||
"setuptools": "44.0.0",
|
||||
"pkginfo": "1.5.0.1",
|
||||
"black": "19.10b0",
|
||||
"requests": "2.22.0",
|
||||
"shellingham": "1.3.1",
|
||||
"idna": "2.8",
|
||||
"attrs": "19.3.0"
|
||||
},
|
||||
"sdk": { "version": "0.14.0", "name": "sentry.python" },
|
||||
"_meta": {
|
||||
"user": null,
|
||||
"context": null,
|
||||
"entries": {
|
||||
"0": {
|
||||
"data": {
|
||||
"values": {
|
||||
"0": {
|
||||
"": null,
|
||||
"stacktrace": {
|
||||
"": null,
|
||||
"frames": {},
|
||||
"registers": null,
|
||||
"framesOmitted": null
|
||||
},
|
||||
"mechanism": null,
|
||||
"module": null,
|
||||
"value": null,
|
||||
"threadId": null,
|
||||
"type": null
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"contexts": null,
|
||||
"message": null,
|
||||
"packages": null,
|
||||
"tags": {},
|
||||
"sdk": null
|
||||
},
|
||||
"contexts": {
|
||||
"browser": { "version": "72.0", "type": "browser", "name": "Firefox" },
|
||||
"runtime": {
|
||||
"version": "3.8.1",
|
||||
"type": "runtime",
|
||||
"build": "3.8.1 (default, Jan 3 2020, 22:55:55) \n[GCC 8.3.0]",
|
||||
"name": "CPython"
|
||||
},
|
||||
"trace": {
|
||||
"description": "django.middleware.clickjacking.XFrameOptionsMiddleware.__call__",
|
||||
"parent_span_id": "969696ce99d241b7",
|
||||
"trace_id": "054a97f6e65b4b00a4f44c7befe60632",
|
||||
"span_id": "91c32e43e3ca1f52",
|
||||
"type": "trace",
|
||||
"op": "django.middleware"
|
||||
},
|
||||
"client_os": { "type": "os", "name": "Ubuntu" }
|
||||
},
|
||||
"fingerprints": [
|
||||
"6c23e1847ab5bf6e4d9b040c4054ca67",
|
||||
"8b852c201d5235b712e30315ea1fdffa"
|
||||
],
|
||||
"context": { "sys.argv": ["./manage.py", "runserver", "0.0.0.0:8001"] },
|
||||
"release": null,
|
||||
"groupID": "1435229148"
|
||||
}
|
||||
@@ -1,51 +0,0 @@
|
||||
import copy
|
||||
import random
|
||||
import uuid
|
||||
|
||||
from django.utils import timezone
|
||||
|
||||
from glitchtip.utils import get_random_string
|
||||
|
||||
from . import django_error_factory
|
||||
from .csp import mdn_sample_csp
|
||||
|
||||
events = django_error_factory.all_django_events
|
||||
events.append(mdn_sample_csp)
|
||||
|
||||
things = ["a", "b", "c", None]
|
||||
|
||||
|
||||
def make_event_unique(event, unique_issue=False):
|
||||
"""Assign event a random new event_id and current timestamp"""
|
||||
new_event = copy.deepcopy(event)
|
||||
new_event["event_id"] = uuid.uuid4().hex
|
||||
new_event["timestamp"] = timezone.now().isoformat()
|
||||
new_event["release"] = random.choice(things)
|
||||
new_event["environment"] = random.choice(things)
|
||||
if unique_issue:
|
||||
title = get_random_string()
|
||||
if "message" in new_event:
|
||||
new_event["message"] = title
|
||||
elif "exception" in new_event:
|
||||
new_event["exception"]["values"][0]["value"] = title
|
||||
elif "csp-report" in new_event:
|
||||
new_event["csp-report"]["document-uri"] = title
|
||||
return new_event
|
||||
|
||||
|
||||
def generate_random_event(unique_issue=False):
|
||||
"""Return a random event from library of samples with unique event id"""
|
||||
event = random.choice(events) # nosec
|
||||
result = make_event_unique(event, unique_issue)
|
||||
|
||||
return result
|
||||
|
||||
|
||||
def get_seeded_benchmark_events(quantity=100, seed=1337):
|
||||
"""Non-random events that attempt to simulate common use cases"""
|
||||
random.seed(seed)
|
||||
result = []
|
||||
for i in range(quantity):
|
||||
every_other = i % 2
|
||||
result.append(generate_random_event(every_other))
|
||||
return result
|
||||
@@ -1,370 +0,0 @@
|
||||
[
|
||||
{
|
||||
"event_id": "45e4eb512da94cb2956b788e6932c2cd",
|
||||
"sdk": {
|
||||
"name": "sentry.java.android",
|
||||
"version": "4.0.0",
|
||||
"packages": [
|
||||
{
|
||||
"name": "maven:sentry",
|
||||
"version": "4.0.0"
|
||||
},
|
||||
{
|
||||
"name": "maven:sentry-android-core",
|
||||
"version": "4.0.0"
|
||||
},
|
||||
{
|
||||
"name": "maven:sentry-android-ndk",
|
||||
"version": "4.0.0"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"content_type": "application/json",
|
||||
"type": "event",
|
||||
"length": 5557
|
||||
},
|
||||
{
|
||||
"breadcrumbs": [
|
||||
{
|
||||
"category": "ui.lifecycle",
|
||||
"data": {
|
||||
"screen": "MainActivity",
|
||||
"state": "created"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:12:07.454Z",
|
||||
"type": "navigation"
|
||||
},
|
||||
{
|
||||
"category": "ui.lifecycle",
|
||||
"data": {
|
||||
"screen": "MainActivity",
|
||||
"state": "started"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:12:07.628Z",
|
||||
"type": "navigation"
|
||||
},
|
||||
{
|
||||
"category": "app.lifecycle",
|
||||
"data": {
|
||||
"state": "start"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:12:07.636Z",
|
||||
"type": "session"
|
||||
},
|
||||
{
|
||||
"category": "app.lifecycle",
|
||||
"data": {
|
||||
"state": "foreground"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:12:07.637Z",
|
||||
"type": "navigation"
|
||||
},
|
||||
{
|
||||
"category": "ui.lifecycle",
|
||||
"data": {
|
||||
"screen": "MainActivity",
|
||||
"state": "resumed"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:12:07.637Z",
|
||||
"type": "navigation"
|
||||
},
|
||||
{
|
||||
"category": "ui.lifecycle",
|
||||
"data": {
|
||||
"screen": "MainActivity",
|
||||
"state": "paused"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:13:23.808Z",
|
||||
"type": "navigation"
|
||||
},
|
||||
{
|
||||
"category": "ui.lifecycle",
|
||||
"data": {
|
||||
"screen": "MainActivity",
|
||||
"state": "stopped"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:13:24.430Z",
|
||||
"type": "navigation"
|
||||
},
|
||||
{
|
||||
"category": "ui.lifecycle",
|
||||
"data": {
|
||||
"screen": "MainActivity",
|
||||
"state": "destroyed"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:13:24.437Z",
|
||||
"type": "navigation"
|
||||
},
|
||||
{
|
||||
"category": "app.lifecycle",
|
||||
"data": {
|
||||
"state": "background"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:13:24.524Z",
|
||||
"type": "navigation"
|
||||
},
|
||||
{
|
||||
"category": "ui.lifecycle",
|
||||
"data": {
|
||||
"screen": "MainActivity",
|
||||
"state": "created"
|
||||
},
|
||||
"level": "info",
|
||||
"timestamp": "2021-02-23T03:13:25.533Z",
|
||||
"type": "navigation"
|
||||
}
|
||||
],
|
||||
"dist": "1",
|
||||
"exception": {
|
||||
"values": [
|
||||
{
|
||||
"module": "java.lang",
|
||||
"stacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"native": false,
|
||||
"filename": "ZygoteInit.java",
|
||||
"function": "main",
|
||||
"in_app": false,
|
||||
"lineno": 947,
|
||||
"module": "com.android.internal.os.ZygoteInit"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "RuntimeInit.java",
|
||||
"function": "run",
|
||||
"in_app": false,
|
||||
"lineno": 592,
|
||||
"module": "com.android.internal.os.RuntimeInit$MethodAndArgsCaller"
|
||||
},
|
||||
{
|
||||
"native": true,
|
||||
"filename": "Method.java",
|
||||
"function": "invoke",
|
||||
"in_app": false,
|
||||
"module": "java.lang.reflect.Method"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "ActivityThread.java",
|
||||
"function": "main",
|
||||
"in_app": false,
|
||||
"lineno": 7656,
|
||||
"module": "android.app.ActivityThread"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "Looper.java",
|
||||
"function": "loop",
|
||||
"in_app": false,
|
||||
"lineno": 223,
|
||||
"module": "android.os.Looper"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "Handler.java",
|
||||
"function": "dispatchMessage",
|
||||
"in_app": false,
|
||||
"lineno": 106,
|
||||
"module": "android.os.Handler"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "ActivityThread.java",
|
||||
"function": "handleMessage",
|
||||
"in_app": false,
|
||||
"lineno": 2066,
|
||||
"module": "android.app.ActivityThread$H"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "TransactionExecutor.java",
|
||||
"function": "execute",
|
||||
"in_app": false,
|
||||
"lineno": 95,
|
||||
"module": "android.app.servertransaction.TransactionExecutor"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "TransactionExecutor.java",
|
||||
"function": "executeCallbacks",
|
||||
"in_app": false,
|
||||
"lineno": 135,
|
||||
"module": "android.app.servertransaction.TransactionExecutor"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "LaunchActivityItem.java",
|
||||
"function": "execute",
|
||||
"in_app": false,
|
||||
"lineno": 85,
|
||||
"module": "android.app.servertransaction.LaunchActivityItem"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "ActivityThread.java",
|
||||
"function": "handleLaunchActivity",
|
||||
"in_app": false,
|
||||
"lineno": 3601,
|
||||
"module": "android.app.ActivityThread"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "ActivityThread.java",
|
||||
"function": "performLaunchActivity",
|
||||
"in_app": false,
|
||||
"lineno": 3422,
|
||||
"module": "android.app.ActivityThread"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "Instrumentation.java",
|
||||
"function": "callActivityOnCreate",
|
||||
"in_app": false,
|
||||
"lineno": 1309,
|
||||
"module": "android.app.Instrumentation"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "Activity.java",
|
||||
"function": "performCreate",
|
||||
"in_app": false,
|
||||
"lineno": 7984,
|
||||
"module": "android.app.Activity"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "Activity.java",
|
||||
"function": "performCreate",
|
||||
"in_app": false,
|
||||
"lineno": 8000,
|
||||
"module": "android.app.Activity"
|
||||
},
|
||||
{
|
||||
"native": false,
|
||||
"filename": "MainActivity.java",
|
||||
"function": "onCreate",
|
||||
"in_app": true,
|
||||
"lineno": 22,
|
||||
"module": "com.example.androiderrorfactory.MainActivity"
|
||||
}
|
||||
]
|
||||
},
|
||||
"thread_id": 2,
|
||||
"type": "Exception",
|
||||
"value": "This is a test."
|
||||
}
|
||||
]
|
||||
},
|
||||
"extra": {},
|
||||
"fingerprint": [],
|
||||
"platform": "java",
|
||||
"timestamp": "2021-02-23T03:13:25.533Z",
|
||||
"user": {
|
||||
"id": "3968871acdaea46f"
|
||||
},
|
||||
"contexts": {
|
||||
"app": {
|
||||
"app_build": "1",
|
||||
"app_identifier": "com.example.androiderrorfactory",
|
||||
"app_name": "Android Error Factory",
|
||||
"app_start_time": "2021-02-23T03:12:07.391Z",
|
||||
"app_version": "1.0"
|
||||
},
|
||||
"os": {
|
||||
"build": "sdk_gphone_x86_arm-userdebug 11 RSR1.201013.001 6903271 dev-keys",
|
||||
"kernel_version": "5.4.61-android11-0-00791-gbad091cc4bf3-ab6833933",
|
||||
"name": "Android",
|
||||
"rooted": true,
|
||||
"version": "11"
|
||||
},
|
||||
"device": {
|
||||
"archs": [
|
||||
"x86",
|
||||
"armeabi-v7a",
|
||||
"armeabi"
|
||||
],
|
||||
"battery_level": 100.0,
|
||||
"battery_temperature": 25.0,
|
||||
"boot_time": "2021-02-23T02:57:18.841Z",
|
||||
"brand": "google",
|
||||
"charging": false,
|
||||
"connection_type": "wifi",
|
||||
"external_free_storage": 835477504,
|
||||
"external_storage_size": 835573760,
|
||||
"family": "sdk_gphone_x86_arm",
|
||||
"free_memory": 1124958208,
|
||||
"free_storage": 5904179200,
|
||||
"id": "3968871acdaea46f",
|
||||
"language": "en_US",
|
||||
"low_memory": false,
|
||||
"manufacturer": "Google",
|
||||
"memory_size": 2076913664,
|
||||
"model": "sdk_gphone_x86_arm",
|
||||
"model_id": "RSR1.201013.001",
|
||||
"name": "sdk_gphone_x86_arm",
|
||||
"online": true,
|
||||
"orientation": "portrait",
|
||||
"screen_density": 2.75,
|
||||
"screen_dpi": 440,
|
||||
"screen_height_pixels": 2088,
|
||||
"screen_width_pixels": 1080,
|
||||
"simulator": true,
|
||||
"storage_size": 6240665600,
|
||||
"timezone": "America/New_York"
|
||||
}
|
||||
},
|
||||
"environment": "production",
|
||||
"event_id": "45e4eb512da94cb2956b788e6932c2cd",
|
||||
"release": "com.example.androiderrorfactory@1.0+1",
|
||||
"sdk": {
|
||||
"name": "sentry.java.android",
|
||||
"packages": [
|
||||
{
|
||||
"name": "maven:sentry",
|
||||
"version": "4.0.0"
|
||||
},
|
||||
{
|
||||
"name": "maven:sentry-android-core",
|
||||
"version": "4.0.0"
|
||||
},
|
||||
{
|
||||
"name": "maven:sentry-android-ndk",
|
||||
"version": "4.0.0"
|
||||
}
|
||||
],
|
||||
"version": "4.0.0"
|
||||
},
|
||||
"tags": {
|
||||
"isSideLoaded": "true"
|
||||
}
|
||||
},
|
||||
{
|
||||
"content_type": "application/json",
|
||||
"type": "session",
|
||||
"length": 272
|
||||
},
|
||||
{
|
||||
"sid": "cd2277eb-c49c-4780-98ba-e0faced3050b",
|
||||
"did": "747c00a9-5685-491e-a6a3-e962f4eaf8ba",
|
||||
"started": "2021-02-23T03:12:07.637Z",
|
||||
"status": "ok",
|
||||
"seq": 1614050005549,
|
||||
"errors": 1,
|
||||
"timestamp": "2021-02-23T03:13:25.549Z",
|
||||
"attrs": {
|
||||
"release": "com.example.androiderrorfactory@1.0+1"
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -1,122 +0,0 @@
|
||||
{
|
||||
"level": "error",
|
||||
"exception": {
|
||||
"values": [
|
||||
{
|
||||
"module": null,
|
||||
"type": "Exception",
|
||||
"value": "something 9",
|
||||
"mechanism": null,
|
||||
"stacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"filename": "errors/views.py",
|
||||
"abs_path": "/code/errors/views.py",
|
||||
"function": "get",
|
||||
"module": "errors.views",
|
||||
"lineno": 91,
|
||||
"pre_context": [
|
||||
" 0 / 0",
|
||||
"",
|
||||
"class FingerprintView(View):",
|
||||
" def get(self, request, *args, **kwargs):",
|
||||
" try:"
|
||||
],
|
||||
"context_line": " raise Exception(\"something %s\" % randrange(10))",
|
||||
"post_context": [
|
||||
" except Exception as err:",
|
||||
" with push_scope() as scope:",
|
||||
" scope.fingerprint = [\"foo\"]",
|
||||
" capture_exception(err)",
|
||||
" return HttpResponse(\"Ok\")"
|
||||
],
|
||||
"vars": {
|
||||
"self": "<errors.views.FingerprintView object at 0x7fdb827a69b0>",
|
||||
"request": "<WSGIRequest: GET '/fingerprint/'>",
|
||||
"args": [],
|
||||
"kwargs": {},
|
||||
"err": "Exception('something 9')",
|
||||
"scope": "<Scope id=0x7fdb827bb5e0 name=wsgi>"
|
||||
},
|
||||
"in_app": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"event_id": "3ae3fd09af864ff2b47b5660ffdd2335",
|
||||
"timestamp": "2022-08-26T01:04:11.691403Z",
|
||||
"breadcrumbs": { "values": [] },
|
||||
"transaction": "/fingerprint/",
|
||||
"transaction_info": { "source": "route" },
|
||||
"fingerprint": ["foo"],
|
||||
"contexts": {
|
||||
"trace": {
|
||||
"trace_id": "c5092e5166294f92a45c85400396415e",
|
||||
"span_id": "b12138ae837c101f",
|
||||
"parent_span_id": "b7bf9900011a3876",
|
||||
"op": "django.view",
|
||||
"description": "fingerprint"
|
||||
},
|
||||
"runtime": {
|
||||
"name": "CPython",
|
||||
"version": "3.10.6",
|
||||
"build": "3.10.6 (main, Aug 3 2022, 10:24:07) [GCC 10.2.1 20210110]"
|
||||
}
|
||||
},
|
||||
"modules": {
|
||||
"django": "3.2.15",
|
||||
"ipython-genutils": "0.2.0"
|
||||
},
|
||||
"extra": { "sys.argv": ["./manage.py", "runserver", "0.0.0.0:8001"] },
|
||||
"request": {
|
||||
"url": "http://localhost:8001/fingerprint/",
|
||||
"query_string": "",
|
||||
"method": "GET",
|
||||
"env": { "SERVER_NAME": "0242d0b0a287", "SERVER_PORT": "8001" },
|
||||
"headers": {
|
||||
"Content-Length": "",
|
||||
"Content-Type": "text/plain",
|
||||
"Host": "localhost:8001",
|
||||
"User-Agent": "Mozilla/5.0 (X11; Linux x86_64; rv:104.0) Gecko/20100101 Firefox/104.0",
|
||||
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8",
|
||||
"Accept-Language": "en-US,en;q=0.5",
|
||||
"Accept-Encoding": "gzip, deflate, br",
|
||||
"Referer": "http://localhost:8001/",
|
||||
"Connection": "keep-alive",
|
||||
"Cookie": "",
|
||||
"Upgrade-Insecure-Requests": "1",
|
||||
"Sec-Fetch-Dest": "document",
|
||||
"Sec-Fetch-Mode": "navigate",
|
||||
"Sec-Fetch-Site": "same-origin",
|
||||
"Dnt": "1",
|
||||
"Sec-Gpc": "1"
|
||||
}
|
||||
},
|
||||
"environment": "production",
|
||||
"server_name": "0242d0b0a287",
|
||||
"sdk": {
|
||||
"name": "sentry.python",
|
||||
"version": "1.9.5",
|
||||
"packages": [{ "name": "pypi:sentry-sdk", "version": "1.9.5" }],
|
||||
"integrations": [
|
||||
"argv",
|
||||
"atexit",
|
||||
"dedupe",
|
||||
"django",
|
||||
"excepthook",
|
||||
"logging",
|
||||
"modules",
|
||||
"redis",
|
||||
"stdlib",
|
||||
"threading"
|
||||
]
|
||||
},
|
||||
"platform": "python",
|
||||
"_meta": {
|
||||
"request": {
|
||||
"headers": { "Cookie": { "": { "rem": [["!config", "x", 0, 464]] } } }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,297 +0,0 @@
|
||||
{
|
||||
"level": "error",
|
||||
"exception": {
|
||||
"values": [
|
||||
{
|
||||
"module": null,
|
||||
"type": "ZeroDivisionError",
|
||||
"value": "division by zero",
|
||||
"mechanism": { "type": "django", "handled": false },
|
||||
"stacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"filename": "django/core/handlers/exception.py",
|
||||
"abs_path": "/usr/local/lib/python3.9/site-packages/django/core/handlers/exception.py",
|
||||
"function": "inner",
|
||||
"module": "django.core.handlers.exception",
|
||||
"lineno": 47,
|
||||
"pre_context": [
|
||||
" return inner",
|
||||
" else:",
|
||||
" @wraps(get_response)",
|
||||
" def inner(request):",
|
||||
" try:"
|
||||
],
|
||||
"context_line": " response = get_response(request)",
|
||||
"post_context": [
|
||||
" except Exception as exc:",
|
||||
" response = response_for_exception(request, exc)",
|
||||
" return response",
|
||||
" return inner",
|
||||
""
|
||||
],
|
||||
"vars": {
|
||||
"request": "<WSGIRequest: GET '/divide-zero/'>",
|
||||
"exc": "ZeroDivisionError('division by zero')",
|
||||
"get_response": "<bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f0e5e7675e0>>"
|
||||
},
|
||||
"in_app": true
|
||||
},
|
||||
{
|
||||
"filename": "django/core/handlers/base.py",
|
||||
"abs_path": "/usr/local/lib/python3.9/site-packages/django/core/handlers/base.py",
|
||||
"function": "_get_response",
|
||||
"module": "django.core.handlers.base",
|
||||
"lineno": 179,
|
||||
"pre_context": [
|
||||
" wrapped_callback = self.make_view_atomic(callback)",
|
||||
" # If it is an asynchronous view, run it in a subthread.",
|
||||
" if asyncio.iscoroutinefunction(wrapped_callback):",
|
||||
" wrapped_callback = async_to_sync(wrapped_callback)",
|
||||
" try:"
|
||||
],
|
||||
"context_line": " response = wrapped_callback(request, *callback_args, **callback_kwargs)",
|
||||
"post_context": [
|
||||
" except Exception as e:",
|
||||
" response = self.process_exception_by_middleware(e, request)",
|
||||
" if response is None:",
|
||||
" raise",
|
||||
""
|
||||
],
|
||||
"vars": {
|
||||
"self": "<django.core.handlers.wsgi.WSGIHandler object at 0x7f0e5e7675e0>",
|
||||
"request": "<WSGIRequest: GET '/divide-zero/'>",
|
||||
"response": "None",
|
||||
"callback": "<function DivideZeroView at 0x7f0e5ceee670>",
|
||||
"callback_args": [],
|
||||
"callback_kwargs": {},
|
||||
"middleware_method": "<function CsrfViewMiddleware.process_view at 0x7f0e5cdc5e50>",
|
||||
"wrapped_callback": "<function DivideZeroView at 0x7f0e5c1b7dc0>"
|
||||
},
|
||||
"in_app": true
|
||||
},
|
||||
{
|
||||
"filename": "django/views/generic/base.py",
|
||||
"abs_path": "/usr/local/lib/python3.9/site-packages/django/views/generic/base.py",
|
||||
"function": "view",
|
||||
"module": "django.views.generic.base",
|
||||
"lineno": 70,
|
||||
"pre_context": [
|
||||
" if not hasattr(self, 'request'):",
|
||||
" raise AttributeError(",
|
||||
" \"%s instance has no 'request' attribute. Did you override \"",
|
||||
" \"setup() and forget to call super()?\" % cls.__name__",
|
||||
" )"
|
||||
],
|
||||
"context_line": " return self.dispatch(request, *args, **kwargs)",
|
||||
"post_context": [
|
||||
" view.view_class = cls",
|
||||
" view.view_initkwargs = initkwargs",
|
||||
"",
|
||||
" # take name and docstring from class",
|
||||
" update_wrapper(view, cls, updated=())"
|
||||
],
|
||||
"vars": {
|
||||
"request": "<WSGIRequest: GET '/divide-zero/'>",
|
||||
"args": [],
|
||||
"kwargs": {},
|
||||
"self": "<errors.views.DivideZeroView object at 0x7f0e5c4e08e0>",
|
||||
"cls": "<class 'errors.views.DivideZeroView'>",
|
||||
"initkwargs": {}
|
||||
},
|
||||
"in_app": true
|
||||
},
|
||||
{
|
||||
"filename": "django/views/generic/base.py",
|
||||
"abs_path": "/usr/local/lib/python3.9/site-packages/django/views/generic/base.py",
|
||||
"function": "dispatch",
|
||||
"module": "django.views.generic.base",
|
||||
"lineno": 98,
|
||||
"pre_context": [
|
||||
" # request method isn't on the approved list.",
|
||||
" if request.method.lower() in self.http_method_names:",
|
||||
" handler = getattr(self, request.method.lower(), self.http_method_not_allowed)",
|
||||
" else:",
|
||||
" handler = self.http_method_not_allowed"
|
||||
],
|
||||
"context_line": " return handler(request, *args, **kwargs)",
|
||||
"post_context": [
|
||||
"",
|
||||
" def http_method_not_allowed(self, request, *args, **kwargs):",
|
||||
" logger.warning(",
|
||||
" 'Method Not Allowed (%s): %s', request.method, request.path,",
|
||||
" extra={'status_code': 405, 'request': request}"
|
||||
],
|
||||
"vars": {
|
||||
"self": "<errors.views.DivideZeroView object at 0x7f0e5c4e08e0>",
|
||||
"request": "<WSGIRequest: GET '/divide-zero/'>",
|
||||
"args": [],
|
||||
"kwargs": {},
|
||||
"handler": "<bound method DivideZeroView.get of <errors.views.DivideZeroView object at 0x7f0e5c4e08e0>>"
|
||||
},
|
||||
"in_app": true
|
||||
},
|
||||
{
|
||||
"filename": "errors/views.py",
|
||||
"abs_path": "/code/errors/views.py",
|
||||
"function": "get",
|
||||
"module": "errors.views",
|
||||
"lineno": 18,
|
||||
"pre_context": [
|
||||
" template_name = \"home.html\"",
|
||||
"",
|
||||
"",
|
||||
"class DivideZeroView(View):",
|
||||
" def get(self, request, *args, **kwargs):"
|
||||
],
|
||||
"context_line": " 0/0",
|
||||
"post_context": [
|
||||
"",
|
||||
"",
|
||||
"class DatabaseErrorView(View):",
|
||||
" def get(self, request, *args, **kwargs):",
|
||||
" User.objects.get(id=\"9999999\")"
|
||||
],
|
||||
"vars": {
|
||||
"self": "<errors.views.DivideZeroView object at 0x7f0e5c4e08e0>",
|
||||
"request": "<WSGIRequest: GET '/divide-zero/'>",
|
||||
"args": [],
|
||||
"kwargs": {}
|
||||
},
|
||||
"in_app": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"event_id": "ddfd2bbf7b4c482983bda75c70771345",
|
||||
"timestamp": "2020-12-28T21:04:55.706694Z",
|
||||
"breadcrumbs": { "values": [] },
|
||||
"transaction": "/divide-zero/",
|
||||
"contexts": {
|
||||
"trace": {
|
||||
"trace_id": "b87083e8cc1b439ebcd73ec503cc0d81",
|
||||
"span_id": "904600a6494e8110",
|
||||
"parent_span_id": "92a90c2f0b14fdc2",
|
||||
"op": "django.middleware",
|
||||
"description": "django.middleware.clickjacking.XFrameOptionsMiddleware.__call__"
|
||||
},
|
||||
"runtime": {
|
||||
"name": "CPython",
|
||||
"version": "3.9.1",
|
||||
"build": "3.9.1 (default, Dec 11 2020, 14:22:09) \n[GCC 8.3.0]"
|
||||
}
|
||||
},
|
||||
"modules": {
|
||||
"django-error-factory": "0.1.0",
|
||||
"wheel": "0.36.2",
|
||||
"webencodings": "0.5.1",
|
||||
"wcwidth": "0.2.5",
|
||||
"virtualenv": "20.2.2",
|
||||
"urllib3": "1.26.2",
|
||||
"typed-ast": "1.4.1",
|
||||
"traitlets": "4.3.3",
|
||||
"tomlkit": "0.7.0",
|
||||
"toml": "0.10.2",
|
||||
"sqlparse": "0.4.1",
|
||||
"six": "1.15.0",
|
||||
"shellingham": "1.3.2",
|
||||
"setuptools": "51.0.0",
|
||||
"sentry-sdk": "0.19.5",
|
||||
"secretstorage": "3.3.0",
|
||||
"requests": "2.25.1",
|
||||
"requests-toolbelt": "0.9.1",
|
||||
"regex": "2020.11.13",
|
||||
"pytz": "2020.5",
|
||||
"pyparsing": "2.4.7",
|
||||
"pylev": "1.3.0",
|
||||
"pygments": "2.7.3",
|
||||
"pycparser": "2.20",
|
||||
"ptyprocess": "0.7.0",
|
||||
"prompt-toolkit": "3.0.3",
|
||||
"poetry": "1.1.4",
|
||||
"poetry-core": "1.0.0",
|
||||
"pkginfo": "1.6.1",
|
||||
"pip": "20.3.3",
|
||||
"pickleshare": "0.7.5",
|
||||
"pexpect": "4.8.0",
|
||||
"pathspec": "0.8.1",
|
||||
"pastel": "0.2.1",
|
||||
"parso": "0.8.1",
|
||||
"packaging": "20.8",
|
||||
"msgpack": "1.0.2",
|
||||
"lockfile": "0.12.2",
|
||||
"keyring": "21.7.0",
|
||||
"jeepney": "0.6.0",
|
||||
"jedi": "0.18.0",
|
||||
"ipython": "7.16.1",
|
||||
"ipython-genutils": "0.2.0",
|
||||
"ipdb": "0.12.3",
|
||||
"idna": "2.10",
|
||||
"html5lib": "1.1",
|
||||
"filelock": "3.0.12",
|
||||
"django": "3.1.4",
|
||||
"distlib": "0.3.1",
|
||||
"decorator": "4.4.2",
|
||||
"cryptography": "3.3.1",
|
||||
"crashtest": "0.3.1",
|
||||
"clikit": "0.6.2",
|
||||
"click": "7.1.2",
|
||||
"cleo": "0.8.1",
|
||||
"chardet": "4.0.0",
|
||||
"cffi": "1.14.4",
|
||||
"certifi": "2020.12.5",
|
||||
"cachy": "0.3.0",
|
||||
"cachecontrol": "0.12.6",
|
||||
"black": "19.10b0",
|
||||
"backcall": "0.2.0",
|
||||
"attrs": "20.3.0",
|
||||
"asgiref": "3.3.1",
|
||||
"appdirs": "1.4.4"
|
||||
},
|
||||
"extra": { "sys.argv": ["./manage.py", "runserver", "0.0.0.0:8001"] },
|
||||
"request": {
|
||||
"url": "http://localhost:8001/divide-zero/",
|
||||
"query_string": "",
|
||||
"method": "GET",
|
||||
"env": { "SERVER_NAME": "43d6d8bfda6a", "SERVER_PORT": "8001" },
|
||||
"headers": {
|
||||
"Content-Length": "",
|
||||
"Content-Type": "text/plain",
|
||||
"Host": "localhost:8001",
|
||||
"User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:84.0) Gecko/20100101 Firefox/84.0",
|
||||
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
|
||||
"Accept-Language": "en-US,en;q=0.5",
|
||||
"Accept-Encoding": "gzip, deflate",
|
||||
"Referer": "http://localhost:8001/",
|
||||
"Connection": "keep-alive",
|
||||
"Cookie": "",
|
||||
"Upgrade-Insecure-Requests": "1",
|
||||
"Cache-Control": "max-age=0"
|
||||
}
|
||||
},
|
||||
"server_name": "43d6d8bfda6a",
|
||||
"sdk": {
|
||||
"name": "sentry.python",
|
||||
"version": "0.19.5",
|
||||
"packages": [{ "name": "pypi:sentry-sdk", "version": "0.19.5" }],
|
||||
"integrations": [
|
||||
"argv",
|
||||
"atexit",
|
||||
"dedupe",
|
||||
"django",
|
||||
"excepthook",
|
||||
"logging",
|
||||
"modules",
|
||||
"stdlib",
|
||||
"threading"
|
||||
]
|
||||
},
|
||||
"platform": "python",
|
||||
"_meta": {
|
||||
"request": {
|
||||
"headers": { "Cookie": { "": { "rem": [["!config", "x", 0, 344]] } } }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,65 +0,0 @@
|
||||
{
|
||||
"exception": {
|
||||
"values": [
|
||||
{
|
||||
"type": "Error",
|
||||
"value": "this is an error",
|
||||
"stacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"filename": "http://localhost:8080/dist/bundle.js",
|
||||
"function": "?",
|
||||
"in_app": true,
|
||||
"lineno": 2,
|
||||
"colno": 74022
|
||||
},
|
||||
{
|
||||
"filename": "http://localhost:8080/dist/bundle.js",
|
||||
"function": "?",
|
||||
"in_app": true,
|
||||
"lineno": 2,
|
||||
"colno": 74018
|
||||
},
|
||||
{
|
||||
"filename": "http://localhost:8080/dist/bundle.js",
|
||||
"function": "?",
|
||||
"in_app": true,
|
||||
"lineno": 2,
|
||||
"colno": 73991
|
||||
}
|
||||
]
|
||||
},
|
||||
"mechanism": { "type": "onerror", "handled": false }
|
||||
}
|
||||
]
|
||||
},
|
||||
"level": "error",
|
||||
"platform": "javascript",
|
||||
"event_id": "f4e67b1b9293445a9545465b0b58696c",
|
||||
"timestamp": 1648928683.501,
|
||||
"environment": "production",
|
||||
"release": "1.0",
|
||||
"sdk": {
|
||||
"integrations": [
|
||||
"InboundFilters",
|
||||
"FunctionToString",
|
||||
"TryCatch",
|
||||
"Breadcrumbs",
|
||||
"GlobalHandlers",
|
||||
"LinkedErrors",
|
||||
"Dedupe",
|
||||
"UserAgent"
|
||||
],
|
||||
"name": "sentry.javascript.browser",
|
||||
"version": "6.19.2",
|
||||
"packages": [{ "name": "npm:@sentry/browser", "version": "6.19.2" }]
|
||||
},
|
||||
"request": {
|
||||
"url": "http://localhost:8080/",
|
||||
"headers": {
|
||||
"User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:98.0) Gecko/20100101 Firefox/98.0"
|
||||
}
|
||||
},
|
||||
"tags": { "skippedNormalization": true },
|
||||
"extra": { "normalizeDepth": 3 }
|
||||
}
|
||||
@@ -1,72 +0,0 @@
|
||||
{
|
||||
"exception": {
|
||||
"values": [
|
||||
{
|
||||
"type": "Error",
|
||||
"value": "blarg",
|
||||
"stacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"colno": 29,
|
||||
"filename": "http://localhost:4200/polyfills.js",
|
||||
"function": "timer",
|
||||
"in_app": true,
|
||||
"lineno": 5656
|
||||
},
|
||||
{
|
||||
"colno": 48,
|
||||
"filename": "http://localhost:4200/polyfills.js",
|
||||
"function": "ZoneTask.invoke",
|
||||
"in_app": true,
|
||||
"lineno": 3460
|
||||
}
|
||||
]
|
||||
},
|
||||
"mechanism": { "handled": true, "type": "generic" }
|
||||
}
|
||||
]
|
||||
},
|
||||
"level": "error",
|
||||
"event_id": "1b80eac88dad40eeabe6356db6f9359d",
|
||||
"platform": "javascript",
|
||||
"sdk": {
|
||||
"name": "sentry.javascript.browser",
|
||||
"packages": [{ "name": "npm:@sentry/browser", "version": "5.7.1" }],
|
||||
"version": "5.7.1",
|
||||
"integrations": [
|
||||
"InboundFilters",
|
||||
"FunctionToString",
|
||||
"TryCatch",
|
||||
"Breadcrumbs",
|
||||
"GlobalHandlers",
|
||||
"LinkedErrors",
|
||||
"UserAgent"
|
||||
]
|
||||
},
|
||||
"release": "1.13.3",
|
||||
"breadcrumbs": [
|
||||
{
|
||||
"timestamp": 1574283165.869,
|
||||
"category": "xhr",
|
||||
"data": {
|
||||
"method": "GET",
|
||||
"url": "http://localhost:4200/sockjs-node/info?t=1574283165820",
|
||||
"status_code": 200
|
||||
},
|
||||
"type": "http"
|
||||
},
|
||||
{
|
||||
"timestamp": 1574283166.547,
|
||||
"category": "console",
|
||||
"data": { "extra": { "arguments": ["wut"] }, "logger": "console" },
|
||||
"level": "log",
|
||||
"message": "wut"
|
||||
}
|
||||
],
|
||||
"request": {
|
||||
"url": "http://localhost:4200/account/login",
|
||||
"headers": {
|
||||
"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +0,0 @@
|
||||
These events are taken from open source sentry to test for compatibility. `/api/0/issues/<issue_id>/events/latest/`
|
||||
|
||||
1. Make an event in a error factory project
|
||||
2. Save the JSON in the test_data/incoming_events directory.
|
||||
3. Send the same JSON to an open source sentry instance. Use something such as postwomen. Do not send it from the error factory project again as it will have a different timestamp and event id.
|
||||
4. Save results in this directory.
|
||||
@@ -1,403 +0,0 @@
|
||||
{
|
||||
"eventID": "f4e67b1b9293445a9545465b0b58696c",
|
||||
"dist": null,
|
||||
"userReport": null,
|
||||
"projectID": "11",
|
||||
"previousEventID": null,
|
||||
"message": "Error this is an error webpack://small-js-error-factory/./src/index.ts ?(src/index)",
|
||||
"id": "5255",
|
||||
"size": 4575,
|
||||
"errors": [],
|
||||
"culprit": "?(src/index)",
|
||||
"title": "Error: this is an error",
|
||||
"platform": "javascript",
|
||||
"location": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"nextEventID": null,
|
||||
"type": "error",
|
||||
"metadata": {
|
||||
"type": "Error",
|
||||
"value": "this is an error",
|
||||
"filename": "webpack://small-js-error-factory/./src/index.ts"
|
||||
},
|
||||
"groupingConfig": {
|
||||
"id": "legacy:2019-03-12"
|
||||
},
|
||||
"crashFile": null,
|
||||
"tags": [
|
||||
{
|
||||
"value": "Firefox 98.0",
|
||||
"key": "browser",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "Firefox",
|
||||
"key": "browser.name",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "production",
|
||||
"key": "environment",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "no",
|
||||
"key": "handled",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "error",
|
||||
"key": "level",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "onerror",
|
||||
"key": "mechanism",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "Ubuntu",
|
||||
"key": "os.name",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "1.0",
|
||||
"key": "release",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "True",
|
||||
"key": "skippedNormalization",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"value": "http://localhost:8080/",
|
||||
"key": "url",
|
||||
"_meta": null
|
||||
},
|
||||
{
|
||||
"query": "user.ip:71.249.111.206",
|
||||
"value": "ip:71.249.111.206",
|
||||
"key": "user",
|
||||
"_meta": null
|
||||
}
|
||||
],
|
||||
"dateCreated": "2022-04-02T19:44:43.501Z",
|
||||
"dateReceived": "2022-04-02T19:49:58.910Z",
|
||||
"user": {
|
||||
"username": null,
|
||||
"name": null,
|
||||
"ip_address": "71.249.111.206",
|
||||
"email": null,
|
||||
"data": {},
|
||||
"id": null
|
||||
},
|
||||
"entries": [
|
||||
{
|
||||
"type": "exception",
|
||||
"data": {
|
||||
"values": [
|
||||
{
|
||||
"stacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"function": null,
|
||||
"map": "bundle.js.map",
|
||||
"colNo": 13,
|
||||
"vars": null,
|
||||
"symbol": null,
|
||||
"mapUrl": "http://localhost:8080/dist/bundle.js.map",
|
||||
"module": "src/index",
|
||||
"origAbsPath": "?",
|
||||
"lineNo": 6,
|
||||
"origColNo": "?",
|
||||
"trust": null,
|
||||
"origFunction": "?",
|
||||
"errors": null,
|
||||
"package": null,
|
||||
"absPath": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"inApp": false,
|
||||
"instructionAddr": null,
|
||||
"filename": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"origFilename": "?",
|
||||
"platform": null,
|
||||
"context": [
|
||||
[1, "import * as Sentry from \"@sentry/browser\";"],
|
||||
[2, ""],
|
||||
[
|
||||
3,
|
||||
"Sentry.init({\"dsn\": \"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\", \"release\": \"1.0\"});"
|
||||
],
|
||||
[4, ""],
|
||||
[5, "let foo = \"bar\";"],
|
||||
[6, "throw Error(\"this is an error\");"],
|
||||
[7, "console.log(foo);"],
|
||||
[8, ""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"origLineNo": "?"
|
||||
},
|
||||
{
|
||||
"function": null,
|
||||
"map": "bundle.js.map",
|
||||
"colNo": 13,
|
||||
"vars": null,
|
||||
"symbol": null,
|
||||
"mapUrl": "http://localhost:8080/dist/bundle.js.map",
|
||||
"module": "src/index",
|
||||
"origAbsPath": "?",
|
||||
"lineNo": 6,
|
||||
"origColNo": "?",
|
||||
"trust": null,
|
||||
"origFunction": "?",
|
||||
"errors": null,
|
||||
"package": null,
|
||||
"absPath": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"inApp": false,
|
||||
"instructionAddr": null,
|
||||
"filename": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"origFilename": "?",
|
||||
"platform": null,
|
||||
"context": [
|
||||
[1, "import * as Sentry from \"@sentry/browser\";"],
|
||||
[2, ""],
|
||||
[
|
||||
3,
|
||||
"Sentry.init({\"dsn\": \"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\", \"release\": \"1.0\"});"
|
||||
],
|
||||
[4, ""],
|
||||
[5, "let foo = \"bar\";"],
|
||||
[6, "throw Error(\"this is an error\");"],
|
||||
[7, "console.log(foo);"],
|
||||
[8, ""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"origLineNo": "?"
|
||||
},
|
||||
{
|
||||
"function": null,
|
||||
"map": "bundle.js.map",
|
||||
"colNo": 7,
|
||||
"vars": null,
|
||||
"symbol": null,
|
||||
"mapUrl": "http://localhost:8080/dist/bundle.js.map",
|
||||
"module": "src/index",
|
||||
"origAbsPath": "?",
|
||||
"lineNo": 6,
|
||||
"origColNo": "?",
|
||||
"trust": null,
|
||||
"origFunction": "?",
|
||||
"errors": null,
|
||||
"package": null,
|
||||
"absPath": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"inApp": false,
|
||||
"instructionAddr": null,
|
||||
"filename": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"origFilename": "?",
|
||||
"platform": null,
|
||||
"context": [
|
||||
[1, "import * as Sentry from \"@sentry/browser\";"],
|
||||
[2, ""],
|
||||
[
|
||||
3,
|
||||
"Sentry.init({\"dsn\": \"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\", \"release\": \"1.0\"});"
|
||||
],
|
||||
[4, ""],
|
||||
[5, "let foo = \"bar\";"],
|
||||
[6, "throw Error(\"this is an error\");"],
|
||||
[7, "console.log(foo);"],
|
||||
[8, ""]
|
||||
],
|
||||
"symbolAddr": null,
|
||||
"origLineNo": "?"
|
||||
}
|
||||
],
|
||||
"framesOmitted": null,
|
||||
"registers": null,
|
||||
"hasSystemFrames": false
|
||||
},
|
||||
"module": null,
|
||||
"rawStacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"function": null,
|
||||
"colNo": 74022,
|
||||
"vars": null,
|
||||
"symbol": null,
|
||||
"module": null,
|
||||
"lineNo": 2,
|
||||
"trust": null,
|
||||
"errors": null,
|
||||
"package": null,
|
||||
"absPath": "http://localhost:8080/dist/bundle.js",
|
||||
"inApp": false,
|
||||
"instructionAddr": null,
|
||||
"filename": "/dist/bundle.js",
|
||||
"platform": null,
|
||||
"context": [
|
||||
[
|
||||
1,
|
||||
"/*! For license information please see bundle.js.LICENSE.txt */"
|
||||
],
|
||||
[
|
||||
2,
|
||||
"{snip} ,(()=>{throw n(185).init({dsn:\"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\",release:\"1.0\"}),Error(\"this is an error\")})()})();"
|
||||
],
|
||||
[3, "//# sourceMappingURL=bundle.js.map"]
|
||||
],
|
||||
"symbolAddr": null
|
||||
},
|
||||
{
|
||||
"function": null,
|
||||
"colNo": 74018,
|
||||
"vars": null,
|
||||
"symbol": null,
|
||||
"module": null,
|
||||
"lineNo": 2,
|
||||
"trust": null,
|
||||
"errors": null,
|
||||
"package": null,
|
||||
"absPath": "http://localhost:8080/dist/bundle.js",
|
||||
"inApp": false,
|
||||
"instructionAddr": null,
|
||||
"filename": "/dist/bundle.js",
|
||||
"platform": null,
|
||||
"context": [
|
||||
[
|
||||
1,
|
||||
"/*! For license information please see bundle.js.LICENSE.txt */"
|
||||
],
|
||||
[
|
||||
2,
|
||||
"{snip} ,(()=>{throw n(185).init({dsn:\"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\",release:\"1.0\"}),Error(\"this is an error\")})()})();"
|
||||
],
|
||||
[3, "//# sourceMappingURL=bundle.js.map"]
|
||||
],
|
||||
"symbolAddr": null
|
||||
},
|
||||
{
|
||||
"function": null,
|
||||
"colNo": 73991,
|
||||
"vars": null,
|
||||
"symbol": null,
|
||||
"module": null,
|
||||
"lineNo": 2,
|
||||
"trust": null,
|
||||
"errors": null,
|
||||
"package": null,
|
||||
"absPath": "http://localhost:8080/dist/bundle.js",
|
||||
"inApp": false,
|
||||
"instructionAddr": null,
|
||||
"filename": "/dist/bundle.js",
|
||||
"platform": null,
|
||||
"context": [
|
||||
[
|
||||
1,
|
||||
"/*! For license information please see bundle.js.LICENSE.txt */"
|
||||
],
|
||||
[
|
||||
2,
|
||||
"{snip} ,(()=>{throw n(185).init({dsn:\"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\",release:\"1.0\"}),Error(\"this is an error\")})()})();"
|
||||
],
|
||||
[3, "//# sourceMappingURL=bundle.js.map"]
|
||||
],
|
||||
"symbolAddr": null
|
||||
}
|
||||
],
|
||||
"framesOmitted": null,
|
||||
"registers": null,
|
||||
"hasSystemFrames": false
|
||||
},
|
||||
"mechanism": {
|
||||
"type": "onerror",
|
||||
"handled": false
|
||||
},
|
||||
"threadId": null,
|
||||
"value": "this is an error",
|
||||
"type": "Error"
|
||||
}
|
||||
],
|
||||
"excOmitted": null,
|
||||
"hasSystemFrames": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "request",
|
||||
"data": {
|
||||
"fragment": "",
|
||||
"cookies": [],
|
||||
"inferredContentType": null,
|
||||
"env": null,
|
||||
"headers": [
|
||||
[
|
||||
"User-Agent",
|
||||
"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:98.0) Gecko/20100101 Firefox/98.0"
|
||||
]
|
||||
],
|
||||
"url": "http://localhost:8080/",
|
||||
"query": [],
|
||||
"data": null,
|
||||
"method": null
|
||||
}
|
||||
}
|
||||
],
|
||||
"packages": {},
|
||||
"sdk": {
|
||||
"version": "6.19.2",
|
||||
"name": "sentry.javascript.browser",
|
||||
"upstream": {
|
||||
"url": null,
|
||||
"isNewer": false,
|
||||
"name": "sentry.javascript.browser"
|
||||
}
|
||||
},
|
||||
"_meta": {
|
||||
"user": null,
|
||||
"context": null,
|
||||
"entries": {},
|
||||
"contexts": null,
|
||||
"message": null,
|
||||
"packages": null,
|
||||
"tags": {},
|
||||
"sdk": null
|
||||
},
|
||||
"contexts": {
|
||||
"os": {
|
||||
"type": "os",
|
||||
"name": "Ubuntu"
|
||||
},
|
||||
"browser": {
|
||||
"version": "98.0",
|
||||
"type": "browser",
|
||||
"name": "Firefox"
|
||||
}
|
||||
},
|
||||
"fingerprints": ["d75931e06f591a159796e023fd11afae"],
|
||||
"context": {
|
||||
"normalizeDepth": 3
|
||||
},
|
||||
"release": {
|
||||
"dateReleased": null,
|
||||
"commitCount": 0,
|
||||
"url": null,
|
||||
"data": {},
|
||||
"lastDeploy": null,
|
||||
"deployCount": 0,
|
||||
"dateCreated": "2022-04-02T19:47:38.318Z",
|
||||
"lastEvent": "2022-04-02T19:44:43.501Z",
|
||||
"version": "1.0",
|
||||
"firstEvent": "2022-04-02T19:48:09.247Z",
|
||||
"lastCommit": null,
|
||||
"shortVersion": "1.0",
|
||||
"authors": [],
|
||||
"owner": null,
|
||||
"newGroups": 1,
|
||||
"ref": null,
|
||||
"projects": [
|
||||
{
|
||||
"slug": "my-js-project",
|
||||
"name": "My JS Project"
|
||||
}
|
||||
]
|
||||
},
|
||||
"groupID": "314"
|
||||
}
|
||||
@@ -1,186 +0,0 @@
|
||||
{
|
||||
"event_id": "f4e67b1b9293445a9545465b0b58696c",
|
||||
"project": 11,
|
||||
"release": "1.0",
|
||||
"dist": null,
|
||||
"platform": "javascript",
|
||||
"message": "",
|
||||
"datetime": "2022-04-02T19:44:43.501000Z",
|
||||
"time_spent": null,
|
||||
"tags": [
|
||||
["browser", "Firefox 98.0"],
|
||||
["browser.name", "Firefox"],
|
||||
["environment", "production"],
|
||||
["handled", "no"],
|
||||
["level", "error"],
|
||||
["mechanism", "onerror"],
|
||||
["os.name", "Ubuntu"],
|
||||
["release", "1.0"],
|
||||
["user", "ip:71.249.111.206"],
|
||||
["skippedNormalization", "True"],
|
||||
["url", "http://localhost:8080/"]
|
||||
],
|
||||
"contexts": {
|
||||
"os": { "version": null, "name": "Ubuntu" },
|
||||
"browser": { "version": "98.0", "name": "Firefox" }
|
||||
},
|
||||
"culprit": "?(src/index)",
|
||||
"environment": "production",
|
||||
"exception": {
|
||||
"values": [
|
||||
{
|
||||
"stacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"abs_path": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"pre_context": [
|
||||
"import * as Sentry from \"@sentry/browser\";",
|
||||
"",
|
||||
"Sentry.init({\"dsn\": \"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\", \"release\": \"1.0\"});",
|
||||
"",
|
||||
"let foo = \"bar\";"
|
||||
],
|
||||
"post_context": ["console.log(foo);", ""],
|
||||
"module": "src/index",
|
||||
"in_app": false,
|
||||
"lineno": 6,
|
||||
"colno": 13,
|
||||
"filename": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"data": {
|
||||
"sourcemap": "http://localhost:8080/dist/bundle.js.map"
|
||||
},
|
||||
"context_line": "throw Error(\"this is an error\");"
|
||||
},
|
||||
{
|
||||
"abs_path": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"pre_context": [
|
||||
"import * as Sentry from \"@sentry/browser\";",
|
||||
"",
|
||||
"Sentry.init({\"dsn\": \"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\", \"release\": \"1.0\"});",
|
||||
"",
|
||||
"let foo = \"bar\";"
|
||||
],
|
||||
"post_context": ["console.log(foo);", ""],
|
||||
"module": "src/index",
|
||||
"in_app": false,
|
||||
"lineno": 6,
|
||||
"colno": 13,
|
||||
"filename": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"data": {
|
||||
"sourcemap": "http://localhost:8080/dist/bundle.js.map"
|
||||
},
|
||||
"context_line": "throw Error(\"this is an error\");"
|
||||
},
|
||||
{
|
||||
"abs_path": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"pre_context": [
|
||||
"import * as Sentry from \"@sentry/browser\";",
|
||||
"",
|
||||
"Sentry.init({\"dsn\": \"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\", \"release\": \"1.0\"});",
|
||||
"",
|
||||
"let foo = \"bar\";"
|
||||
],
|
||||
"post_context": ["console.log(foo);", ""],
|
||||
"module": "src/index",
|
||||
"in_app": false,
|
||||
"lineno": 6,
|
||||
"colno": 7,
|
||||
"filename": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"data": {
|
||||
"sourcemap": "http://localhost:8080/dist/bundle.js.map"
|
||||
},
|
||||
"context_line": "throw Error(\"this is an error\");"
|
||||
}
|
||||
]
|
||||
},
|
||||
"raw_stacktrace": {
|
||||
"frames": [
|
||||
{
|
||||
"abs_path": "http://localhost:8080/dist/bundle.js",
|
||||
"pre_context": [
|
||||
"/*! For license information please see bundle.js.LICENSE.txt */"
|
||||
],
|
||||
"post_context": ["//# sourceMappingURL=bundle.js.map"],
|
||||
"in_app": false,
|
||||
"lineno": 2,
|
||||
"colno": 74022,
|
||||
"filename": "/dist/bundle.js",
|
||||
"context_line": "{snip} ,(()=>{throw n(185).init({dsn:\"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\",release:\"1.0\"}),Error(\"this is an error\")})()})();"
|
||||
},
|
||||
{
|
||||
"abs_path": "http://localhost:8080/dist/bundle.js",
|
||||
"pre_context": [
|
||||
"/*! For license information please see bundle.js.LICENSE.txt */"
|
||||
],
|
||||
"post_context": ["//# sourceMappingURL=bundle.js.map"],
|
||||
"in_app": false,
|
||||
"lineno": 2,
|
||||
"colno": 74018,
|
||||
"filename": "/dist/bundle.js",
|
||||
"context_line": "{snip} ,(()=>{throw n(185).init({dsn:\"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\",release:\"1.0\"}),Error(\"this is an error\")})()})();"
|
||||
},
|
||||
{
|
||||
"abs_path": "http://localhost:8080/dist/bundle.js",
|
||||
"pre_context": [
|
||||
"/*! For license information please see bundle.js.LICENSE.txt */"
|
||||
],
|
||||
"post_context": ["//# sourceMappingURL=bundle.js.map"],
|
||||
"in_app": false,
|
||||
"lineno": 2,
|
||||
"colno": 73991,
|
||||
"filename": "/dist/bundle.js",
|
||||
"context_line": "{snip} ,(()=>{throw n(185).init({dsn:\"http://a00ad5cad416418684270e433baf9c77@172.17.0.1:8000/4\",release:\"1.0\"}),Error(\"this is an error\")})()})();"
|
||||
}
|
||||
]
|
||||
},
|
||||
"value": "this is an error",
|
||||
"mechanism": { "type": "onerror", "handled": false },
|
||||
"type": "Error"
|
||||
}
|
||||
]
|
||||
},
|
||||
"extra": { "normalizeDepth": 3 },
|
||||
"fingerprint": ["{{ default }}"],
|
||||
"grouping_config": { "id": "legacy:2019-03-12" },
|
||||
"hashes": ["d75931e06f591a159796e023fd11afae"],
|
||||
"key_id": "11",
|
||||
"level": "error",
|
||||
"location": "webpack://small-js-error-factory/./src/index.ts",
|
||||
"logger": "",
|
||||
"metadata": {
|
||||
"type": "Error",
|
||||
"value": "this is an error",
|
||||
"filename": "webpack://small-js-error-factory/./src/index.ts"
|
||||
},
|
||||
"received": 1648928998.91,
|
||||
"request": {
|
||||
"url": "http://localhost:8080/",
|
||||
"headers": [
|
||||
[
|
||||
"User-Agent",
|
||||
"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:98.0) Gecko/20100101 Firefox/98.0"
|
||||
]
|
||||
]
|
||||
},
|
||||
"sdk": {
|
||||
"version": "6.19.2",
|
||||
"name": "sentry.javascript.browser",
|
||||
"packages": [{ "version": "6.19.2", "name": "npm:@sentry/browser" }],
|
||||
"integrations": [
|
||||
"InboundFilters",
|
||||
"FunctionToString",
|
||||
"TryCatch",
|
||||
"Breadcrumbs",
|
||||
"GlobalHandlers",
|
||||
"LinkedErrors",
|
||||
"Dedupe",
|
||||
"UserAgent"
|
||||
]
|
||||
},
|
||||
"timestamp": 1648928683.501,
|
||||
"title": "Error: this is an error",
|
||||
"type": "error",
|
||||
"use_rust_normalize": true,
|
||||
"user": { "ip_address": "71.249.111.206" },
|
||||
"version": "7"
|
||||
}
|
||||
@@ -1,123 +0,0 @@
|
||||
[
|
||||
{
|
||||
"event_id": "037419a37a8e426ba52e82cd647f2d14",
|
||||
"sent_at": "2022-08-01T16:59:58.064Z",
|
||||
"sdk": { "name": "sentry.javascript.angular", "version": "7.8.1" },
|
||||
"trace": {
|
||||
"environment": "dev",
|
||||
"release": "1.0",
|
||||
"public_key": "4d886b61b58e48a685455c51c434d2a6",
|
||||
"trace_id": "df3b21283b08480ba166b32692d85453",
|
||||
"sample_rate": "1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "transaction",
|
||||
"sample_rates": [{ "id": "client_sampler", "rate": 1 }]
|
||||
},
|
||||
{
|
||||
"contexts": {
|
||||
"angular": { "version": 14 },
|
||||
"trace": {
|
||||
"op": "pageload",
|
||||
"span_id": "a468669a1489ecf7",
|
||||
"tags": {
|
||||
"hardwareConcurrency": "16",
|
||||
"sentry_reportAllChanges": false
|
||||
},
|
||||
"trace_id": "df3b21283b08480ba166b32692d85453"
|
||||
}
|
||||
},
|
||||
"spans": [
|
||||
{
|
||||
"description": "unloadEvent",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a468669a1489ecf7",
|
||||
"span_id": "a39d104d785c87c3",
|
||||
"start_timestamp": 1659373196.921,
|
||||
"timestamp": 1659373196.921,
|
||||
"trace_id": "df3b21283b08480ba166b32692d85453"
|
||||
},
|
||||
{
|
||||
"description": "first-contentful-paint",
|
||||
"op": "paint",
|
||||
"parent_span_id": "a468669a1489ecf7",
|
||||
"span_id": "ba375d967f28e05b",
|
||||
"start_timestamp": 1659373197.0779998,
|
||||
"timestamp": 1659373197.0779998,
|
||||
"trace_id": "df3b21283b08480ba166b32692d85453"
|
||||
}
|
||||
],
|
||||
"start_timestamp": 1659373196.891,
|
||||
"tags": { "hardwareConcurrency": "16", "sentry_reportAllChanges": false },
|
||||
"timestamp": 1659373197.135,
|
||||
"transaction": "/tracing",
|
||||
"type": "transaction",
|
||||
"transaction_info": { "source": "url" },
|
||||
"measurements": {
|
||||
"fcp": { "value": 186.99979782104492, "unit": "millisecond" },
|
||||
"mark.fcp": { "value": 1659373197.0779998, "unit": "second" },
|
||||
"ttfb": { "value": 26.999950408935547, "unit": "millisecond" },
|
||||
"ttfb.requestTime": { "value": 0.9999275207519531, "unit": "millisecond" }
|
||||
},
|
||||
"platform": "javascript",
|
||||
"event_id": "037419a37a8e426ba52e82cd647f2d14",
|
||||
"environment": "dev",
|
||||
"release": "1.0",
|
||||
"sdk": {
|
||||
"integrations": [
|
||||
"InboundFilters",
|
||||
"FunctionToString",
|
||||
"TryCatch",
|
||||
"Breadcrumbs",
|
||||
"GlobalHandlers",
|
||||
"LinkedErrors",
|
||||
"Dedupe",
|
||||
"HttpContext",
|
||||
"BrowserTracing"
|
||||
],
|
||||
"name": "sentry.javascript.angular",
|
||||
"version": "7.8.1",
|
||||
"packages": [{ "name": "npm:@sentry/angular", "version": "7.8.1" }]
|
||||
},
|
||||
"breadcrumbs": [
|
||||
{
|
||||
"timestamp": 1659373197.052,
|
||||
"category": "console",
|
||||
"data": { "arguments": ["what what"], "logger": "console" },
|
||||
"level": "log",
|
||||
"message": "what what"
|
||||
},
|
||||
{
|
||||
"timestamp": 1659373197.052,
|
||||
"category": "console",
|
||||
"data": { "arguments": ["DOIT"], "logger": "console" },
|
||||
"level": "log",
|
||||
"message": "DOIT"
|
||||
},
|
||||
{
|
||||
"timestamp": 1659373197.074,
|
||||
"category": "console",
|
||||
"data": {
|
||||
"arguments": [
|
||||
"Angular is running in development mode. Call enableProdMode() to enable production mode."
|
||||
],
|
||||
"logger": "console"
|
||||
},
|
||||
"level": "log",
|
||||
"message": "Angular is running in development mode. Call enableProdMode() to enable production mode."
|
||||
},
|
||||
{
|
||||
"timestamp": 1659373197.08,
|
||||
"category": "navigation",
|
||||
"data": { "from": "/tracing", "to": "/tracing" }
|
||||
}
|
||||
],
|
||||
"request": {
|
||||
"url": "http://localhost:4201/tracing",
|
||||
"headers": {
|
||||
"User-Agent": "Mozilla/5.0 (X11; Linux x86_64; rv:103.0) Gecko/20100101 Firefox/103.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -1,190 +0,0 @@
|
||||
{
|
||||
"type": "transaction",
|
||||
"transaction": "/",
|
||||
"contexts": {
|
||||
"trace": {
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "a51f11f130d703b2",
|
||||
"parent_span_id": null,
|
||||
"op": "http.server",
|
||||
"description": null,
|
||||
"status": "ok"
|
||||
},
|
||||
"runtime": {
|
||||
"name": "CPython",
|
||||
"version": "3.9.1",
|
||||
"build": "3.9.1 (default, Dec 11 2020, 14:22:09) \n[GCC 8.3.0]"
|
||||
}
|
||||
},
|
||||
"tags": { "http.status_code": "200" },
|
||||
"timestamp": "2020-12-29T17:51:08.468108Z",
|
||||
"start_timestamp": "2020-12-29T17:51:08.458023Z",
|
||||
"spans": [
|
||||
{
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "b822e9dedc69ad38",
|
||||
"parent_span_id": "a51f11f130d703b2",
|
||||
"same_process_as_parent": true,
|
||||
"op": "django.middleware",
|
||||
"description": "django.middleware.security.SecurityMiddleware.__call__",
|
||||
"start_timestamp": "2020-12-29T17:51:08.459184Z",
|
||||
"timestamp": "2020-12-29T17:51:08.467908Z",
|
||||
"tags": {
|
||||
"django.function_name": "django.utils.deprecation.MiddlewareMixin.__call__",
|
||||
"django.middleware_name": "django.middleware.security.SecurityMiddleware"
|
||||
}
|
||||
},
|
||||
{
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "bc3b7d5de96413aa",
|
||||
"parent_span_id": "b822e9dedc69ad38",
|
||||
"same_process_as_parent": true,
|
||||
"op": "django.middleware",
|
||||
"description": "django.contrib.sessions.middleware.SessionMiddleware.__call__",
|
||||
"start_timestamp": "2020-12-29T17:51:08.459378Z",
|
||||
"timestamp": "2020-12-29T17:51:08.467850Z",
|
||||
"tags": {
|
||||
"django.function_name": "django.utils.deprecation.MiddlewareMixin.__call__",
|
||||
"django.middleware_name": "django.contrib.sessions.middleware.SessionMiddleware"
|
||||
}
|
||||
},
|
||||
{
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "b32df5137e2bda2e",
|
||||
"parent_span_id": "bc3b7d5de96413aa",
|
||||
"same_process_as_parent": true,
|
||||
"op": "django.middleware",
|
||||
"description": "django.middleware.common.CommonMiddleware.__call__",
|
||||
"start_timestamp": "2020-12-29T17:51:08.459741Z",
|
||||
"timestamp": "2020-12-29T17:51:08.467817Z",
|
||||
"tags": {
|
||||
"django.function_name": "django.utils.deprecation.MiddlewareMixin.__call__",
|
||||
"django.middleware_name": "django.middleware.common.CommonMiddleware"
|
||||
}
|
||||
},
|
||||
{
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "aea5c38d0ed37a0a",
|
||||
"parent_span_id": "b32df5137e2bda2e",
|
||||
"same_process_as_parent": true,
|
||||
"op": "django.middleware",
|
||||
"description": "django.middleware.csrf.CsrfViewMiddleware.__call__",
|
||||
"start_timestamp": "2020-12-29T17:51:08.459987Z",
|
||||
"timestamp": "2020-12-29T17:51:08.467742Z",
|
||||
"tags": {
|
||||
"django.function_name": "django.utils.deprecation.MiddlewareMixin.__call__",
|
||||
"django.middleware_name": "django.middleware.csrf.CsrfViewMiddleware"
|
||||
}
|
||||
},
|
||||
{
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "96637f64cccce95c",
|
||||
"parent_span_id": "aea5c38d0ed37a0a",
|
||||
"same_process_as_parent": true,
|
||||
"op": "django.middleware",
|
||||
"description": "django.contrib.auth.middleware.AuthenticationMiddleware.__call__",
|
||||
"start_timestamp": "2020-12-29T17:51:08.460158Z",
|
||||
"timestamp": "2020-12-29T17:51:08.467536Z",
|
||||
"tags": {
|
||||
"django.function_name": "django.utils.deprecation.MiddlewareMixin.__call__",
|
||||
"django.middleware_name": "django.contrib.auth.middleware.AuthenticationMiddleware"
|
||||
}
|
||||
},
|
||||
{
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "b26d935f9bb37598",
|
||||
"parent_span_id": "96637f64cccce95c",
|
||||
"same_process_as_parent": true,
|
||||
"op": "django.middleware",
|
||||
"description": "django.contrib.messages.middleware.MessageMiddleware.__call__",
|
||||
"start_timestamp": "2020-12-29T17:51:08.460300Z",
|
||||
"timestamp": "2020-12-29T17:51:08.467519Z",
|
||||
"tags": {
|
||||
"django.function_name": "django.utils.deprecation.MiddlewareMixin.__call__",
|
||||
"django.middleware_name": "django.contrib.messages.middleware.MessageMiddleware"
|
||||
}
|
||||
},
|
||||
{
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "ab1235482d7ab4c3",
|
||||
"parent_span_id": "b26d935f9bb37598",
|
||||
"same_process_as_parent": true,
|
||||
"op": "django.middleware",
|
||||
"description": "django.middleware.clickjacking.XFrameOptionsMiddleware.__call__",
|
||||
"start_timestamp": "2020-12-29T17:51:08.460705Z",
|
||||
"timestamp": "2020-12-29T17:51:08.467470Z",
|
||||
"tags": {
|
||||
"django.function_name": "django.utils.deprecation.MiddlewareMixin.__call__",
|
||||
"django.middleware_name": "django.middleware.clickjacking.XFrameOptionsMiddleware"
|
||||
}
|
||||
},
|
||||
{
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "9196aae1b05da8d2",
|
||||
"parent_span_id": "ab1235482d7ab4c3",
|
||||
"same_process_as_parent": true,
|
||||
"op": "django.middleware",
|
||||
"description": "django.middleware.csrf.CsrfViewMiddleware.process_view",
|
||||
"start_timestamp": "2020-12-29T17:51:08.461004Z",
|
||||
"timestamp": "2020-12-29T17:51:08.461040Z",
|
||||
"tags": {
|
||||
"django.function_name": "django.middleware.csrf.CsrfViewMiddleware.process_view",
|
||||
"django.middleware_name": "django.middleware.csrf.CsrfViewMiddleware"
|
||||
}
|
||||
},
|
||||
{
|
||||
"trace_id": "581eb3bc1f4740eea53717cb7f7450f6",
|
||||
"span_id": "9990658f017f5a82",
|
||||
"parent_span_id": "ab1235482d7ab4c3",
|
||||
"same_process_as_parent": true,
|
||||
"op": "django.view",
|
||||
"description": "home",
|
||||
"start_timestamp": "2020-12-29T17:51:08.461294Z",
|
||||
"timestamp": "2020-12-29T17:51:08.461498Z"
|
||||
}
|
||||
],
|
||||
"event_id": "5a337086bc1545448e29ed938729cba3",
|
||||
"extra": { "sys.argv": ["./manage.py", "runserver", "0.0.0.0:8001"] },
|
||||
"request": {
|
||||
"url": "http://localhost:8001/",
|
||||
"query_string": "",
|
||||
"method": "GET",
|
||||
"env": { "SERVER_NAME": "45e6cd65994c", "SERVER_PORT": "8001" },
|
||||
"headers": {
|
||||
"Content-Length": "",
|
||||
"Content-Type": "text/plain",
|
||||
"Host": "localhost:8001",
|
||||
"User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:84.0) Gecko/20100101 Firefox/84.0",
|
||||
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
|
||||
"Accept-Language": "en-US,en;q=0.5",
|
||||
"Accept-Encoding": "gzip, deflate",
|
||||
"Connection": "keep-alive",
|
||||
"Cookie": "",
|
||||
"Upgrade-Insecure-Requests": "1",
|
||||
"Cache-Control": "max-age=0"
|
||||
}
|
||||
},
|
||||
"server_name": "45e6cd65994c",
|
||||
"sdk": {
|
||||
"name": "sentry.python",
|
||||
"version": "0.19.5",
|
||||
"packages": [{ "name": "pypi:sentry-sdk", "version": "0.19.5" }],
|
||||
"integrations": [
|
||||
"argv",
|
||||
"atexit",
|
||||
"dedupe",
|
||||
"django",
|
||||
"excepthook",
|
||||
"logging",
|
||||
"modules",
|
||||
"stdlib",
|
||||
"threading"
|
||||
]
|
||||
},
|
||||
"platform": "python",
|
||||
"_meta": {
|
||||
"request": {
|
||||
"headers": { "Cookie": { "": { "rem": [["!config", "x", 0, 445]] } } }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,182 +0,0 @@
|
||||
{
|
||||
"contexts": {
|
||||
"trace": {
|
||||
"op": "pageload",
|
||||
"span_id": "a133c27dc47e7aa0",
|
||||
"tags": {
|
||||
"__sentry_samplingMethod": "client_rate",
|
||||
"__sentry_sampleRate": "1",
|
||||
"hardwareConcurrency": "8"
|
||||
},
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
}
|
||||
},
|
||||
"spans": [
|
||||
{
|
||||
"data": {
|
||||
"type": "xhr",
|
||||
"method": "GET",
|
||||
"url": "http://localhost:4201/sockjs-node/info?t=1609289196609"
|
||||
},
|
||||
"description": "GET http://localhost:4201/sockjs-node/info?t=1609289196609",
|
||||
"op": "http",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a7407cde318bdc8a",
|
||||
"start_timestamp": 1609289196.61,
|
||||
"status": "ok",
|
||||
"tags": { "http.status_code": "200" },
|
||||
"timestamp": 1609289196.616,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "unloadEvent",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8eb61fd4a8b455fb",
|
||||
"start_timestamp": 1609289196.442,
|
||||
"timestamp": 1609289196.442,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "domContentLoadedEvent",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b07d15804415324b",
|
||||
"start_timestamp": 1609289196.604,
|
||||
"timestamp": 1609289196.604,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "loadEvent",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "9fafc65a72e38c38",
|
||||
"start_timestamp": 1609289196.604,
|
||||
"timestamp": 1609289196.604,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "connect",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a7a78cccbf42b78d",
|
||||
"start_timestamp": 1609289196.433,
|
||||
"timestamp": 1609289196.433,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "domainLookup",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b5a567978ef2d3aa",
|
||||
"start_timestamp": 1609289196.433,
|
||||
"timestamp": 1609289196.433,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "request",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "aae9e36596422dbc",
|
||||
"start_timestamp": 1609289196.437,
|
||||
"timestamp": 1609289196.438,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:PromiseRejectionEvent",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a01a87453dac708f",
|
||||
"start_timestamp": 1609289196.482,
|
||||
"timestamp": 1609289196.482,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "sentry-tracing-init",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b0c7959922286bf0",
|
||||
"start_timestamp": 1609289196.558,
|
||||
"timestamp": 1609289196.558,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "first-contentful-paint",
|
||||
"op": "paint",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "83691247574aed87",
|
||||
"start_timestamp": 1609289196.558,
|
||||
"timestamp": 1609289196.558,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
}
|
||||
],
|
||||
"start_timestamp": 1609289196.433,
|
||||
"tags": { "hardwareConcurrency": "8" },
|
||||
"timestamp": 1609289196.616,
|
||||
"transaction": "/",
|
||||
"type": "transaction",
|
||||
"measurements": {
|
||||
"ttfb": { "value": 4.999876022338867 },
|
||||
"ttfb.requestTime": { "value": 1 },
|
||||
"fcp": { "value": 125 },
|
||||
"mark.fcp": { "value": 1609289196.558 }
|
||||
},
|
||||
"platform": "javascript",
|
||||
"sdk": {
|
||||
"name": "sentry.javascript.browser",
|
||||
"packages": [{ "name": "npm:@sentry/browser", "version": "5.29.2" }],
|
||||
"version": "5.29.2",
|
||||
"integrations": [
|
||||
"InboundFilters",
|
||||
"FunctionToString",
|
||||
"TryCatch",
|
||||
"Breadcrumbs",
|
||||
"GlobalHandlers",
|
||||
"LinkedErrors",
|
||||
"UserAgent",
|
||||
"BrowserTracing"
|
||||
]
|
||||
},
|
||||
"event_id": "35b3e388b2eb4753a60ae9943626e3bc",
|
||||
"environment": "production",
|
||||
"breadcrumbs": [
|
||||
{
|
||||
"timestamp": 1609289196.594,
|
||||
"category": "console",
|
||||
"data": {
|
||||
"arguments": [
|
||||
"Angular is running in development mode. Call enableProdMode() to enable production mode."
|
||||
],
|
||||
"logger": "console"
|
||||
},
|
||||
"level": "log",
|
||||
"message": "Angular is running in development mode. Call enableProdMode() to enable production mode."
|
||||
},
|
||||
{
|
||||
"timestamp": 1609289196.599,
|
||||
"category": "navigation",
|
||||
"data": { "from": "/", "to": "/" }
|
||||
},
|
||||
{
|
||||
"timestamp": 1609289196.607,
|
||||
"category": "ui.click",
|
||||
"message": "body > app-root > ol > li > button"
|
||||
},
|
||||
{
|
||||
"timestamp": 1609289196.616,
|
||||
"category": "xhr",
|
||||
"data": {
|
||||
"method": "GET",
|
||||
"url": "http://localhost:4201/sockjs-node/info?t=1609289196609",
|
||||
"status_code": 200
|
||||
},
|
||||
"type": "http"
|
||||
}
|
||||
],
|
||||
"request": {
|
||||
"url": "http://localhost:4201/",
|
||||
"headers": {
|
||||
"User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:84.0) Gecko/20100101 Firefox/84.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,238 +0,0 @@
|
||||
[
|
||||
{
|
||||
"event_id": "aa159604bf264634bf69a542511f10a3",
|
||||
"sent_at": "2022-07-12T01:31:22.636Z",
|
||||
"sdk": {
|
||||
"name": "sentry.javascript.angular",
|
||||
"version": "7.6.0"
|
||||
},
|
||||
"trace": {
|
||||
"public_key": "3887bca678924cd3a276f7e57d135ad9",
|
||||
"trace_id": "58c97bf3cf5d455c864741913e122d41",
|
||||
"sample_rate": "1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "transaction",
|
||||
"sample_rates": [
|
||||
{
|
||||
"id": "client_sampler",
|
||||
"rate": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"contexts": {
|
||||
"angular": {
|
||||
"version": 13
|
||||
},
|
||||
"trace": {
|
||||
"op": "navigation",
|
||||
"span_id": "905d36eebee31df8",
|
||||
"tags": {
|
||||
"hardwareConcurrency": "16",
|
||||
"sentry_reportAllChanges": false
|
||||
},
|
||||
"trace_id": "58c97bf3cf5d455c864741913e122d41"
|
||||
}
|
||||
},
|
||||
"spans": [],
|
||||
"start_timestamp": 1657589481.622,
|
||||
"tags": {
|
||||
"hardwareConcurrency": "16",
|
||||
"sentry_reportAllChanges": false
|
||||
},
|
||||
"timestamp": 1657589482.623,
|
||||
"transaction": "/tracing-3",
|
||||
"type": "transaction",
|
||||
"transaction_info": {
|
||||
"source": "url"
|
||||
},
|
||||
"platform": "javascript",
|
||||
"event_id": "aa159604bf264634bf69a542511f10a3",
|
||||
"environment": "production",
|
||||
"sdk": {
|
||||
"integrations": [
|
||||
"InboundFilters",
|
||||
"FunctionToString",
|
||||
"TryCatch",
|
||||
"Breadcrumbs",
|
||||
"GlobalHandlers",
|
||||
"LinkedErrors",
|
||||
"Dedupe",
|
||||
"HttpContext",
|
||||
"BrowserTracing"
|
||||
],
|
||||
"name": "sentry.javascript.angular",
|
||||
"version": "7.6.0",
|
||||
"packages": [
|
||||
{
|
||||
"name": "npm:@sentry/angular",
|
||||
"version": "7.6.0"
|
||||
}
|
||||
]
|
||||
},
|
||||
"breadcrumbs": [
|
||||
{
|
||||
"timestamp": 1657588833.579,
|
||||
"category": "console",
|
||||
"data": {
|
||||
"arguments": [
|
||||
"Angular is running in development mode. Call enableProdMode() to enable production mode."
|
||||
],
|
||||
"logger": "console"
|
||||
},
|
||||
"level": "log",
|
||||
"message": "Angular is running in development mode. Call enableProdMode() to enable production mode."
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588833.583,
|
||||
"category": "navigation",
|
||||
"data": {
|
||||
"from": "/",
|
||||
"to": "/"
|
||||
}
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588841.216,
|
||||
"category": "ui.click",
|
||||
"message": "body > app-root > ol > li > button"
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588841.24,
|
||||
"category": "sentry.event",
|
||||
"event_id": "2b6d317ffaee4bf6bf957b5ac703d58e",
|
||||
"level": "error",
|
||||
"message": "RangeError: The number must be between 0 and 10."
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588841.244,
|
||||
"category": "console",
|
||||
"data": {
|
||||
"arguments": [
|
||||
{
|
||||
"message": "The number must be between 0 and 10.",
|
||||
"name": "RangeError",
|
||||
"stack": "checkRange@http://localhost:4201/main.js:94:19\nAppComponent_Template_button_click_17_listener@http://localhost:4201/main.js:158:146\nexecuteListenerWithErrorHandling@http://localhost:4201/vendor.js:46108:16\nwrapListenerIn_markDirtyAndPreventDefault@http://localhost:4201/vendor.js:46146:54\ndecoratePreventDefault/<@http://localhost:4201/vendor.js:60555:46\nsentryWrapped@http://localhost:4201/vendor.js:1052:17\ninvokeTask@http://localhost:4201/polyfills.js:3521:31\nonInvokeTask@http://localhost:4201/vendor.js:56672:33\ninvokeTask@http://localhost:4201/polyfills.js:3520:60\nrunTask@http://localhost:4201/polyfills.js:3293:47\ninvokeTask@http://localhost:4201/polyfills.js:3602:34\ninvokeTask@http://localhost:4201/polyfills.js:4715:14\nglobalZoneAwareCallback@http://localhost:4201/polyfills.js:4752:31\n"
|
||||
}
|
||||
],
|
||||
"logger": "console"
|
||||
},
|
||||
"level": "error",
|
||||
"message": "RangeError: The number must be between 0 and 10."
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588842.24,
|
||||
"category": "ui.click",
|
||||
"message": "body > app-root > ol > li > button"
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588842.248,
|
||||
"category": "console",
|
||||
"data": {
|
||||
"arguments": [
|
||||
{
|
||||
"message": "The number must be between 0 and 10.",
|
||||
"name": "RangeError",
|
||||
"stack": "checkRange@http://localhost:4201/main.js:94:19\nAppComponent_Template_button_click_17_listener@http://localhost:4201/main.js:158:146\nexecuteListenerWithErrorHandling@http://localhost:4201/vendor.js:46108:16\nwrapListenerIn_markDirtyAndPreventDefault@http://localhost:4201/vendor.js:46146:54\ndecoratePreventDefault/<@http://localhost:4201/vendor.js:60555:46\nsentryWrapped@http://localhost:4201/vendor.js:1052:17\ninvokeTask@http://localhost:4201/polyfills.js:3521:31\nonInvokeTask@http://localhost:4201/vendor.js:56672:33\ninvokeTask@http://localhost:4201/polyfills.js:3520:60\nrunTask@http://localhost:4201/polyfills.js:3293:47\ninvokeTask@http://localhost:4201/polyfills.js:3602:34\ninvokeTask@http://localhost:4201/polyfills.js:4715:14\nglobalZoneAwareCallback@http://localhost:4201/polyfills.js:4752:31\n"
|
||||
}
|
||||
],
|
||||
"logger": "console"
|
||||
},
|
||||
"level": "error",
|
||||
"message": "RangeError: The number must be between 0 and 10."
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588842.621,
|
||||
"category": "console",
|
||||
"data": {
|
||||
"arguments": [
|
||||
{
|
||||
"message": "The number must be between 0 and 10.",
|
||||
"name": "RangeError",
|
||||
"stack": "checkRange@http://localhost:4201/main.js:94:19\nAppComponent_Template_button_click_17_listener@http://localhost:4201/main.js:158:146\nexecuteListenerWithErrorHandling@http://localhost:4201/vendor.js:46108:16\nwrapListenerIn_markDirtyAndPreventDefault@http://localhost:4201/vendor.js:46146:54\ndecoratePreventDefault/<@http://localhost:4201/vendor.js:60555:46\nsentryWrapped@http://localhost:4201/vendor.js:1052:17\ninvokeTask@http://localhost:4201/polyfills.js:3521:31\nonInvokeTask@http://localhost:4201/vendor.js:56672:33\ninvokeTask@http://localhost:4201/polyfills.js:3520:60\nrunTask@http://localhost:4201/polyfills.js:3293:47\ninvokeTask@http://localhost:4201/polyfills.js:3602:34\ninvokeTask@http://localhost:4201/polyfills.js:4715:14\nglobalZoneAwareCallback@http://localhost:4201/polyfills.js:4752:31\n"
|
||||
}
|
||||
],
|
||||
"logger": "console"
|
||||
},
|
||||
"level": "error",
|
||||
"message": "RangeError: The number must be between 0 and 10."
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588850.911,
|
||||
"category": "ui.click",
|
||||
"message": "body > app-root > ol > li > a"
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588850.927,
|
||||
"category": "navigation",
|
||||
"data": {
|
||||
"from": "/",
|
||||
"to": "/tracing"
|
||||
}
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588852.439,
|
||||
"category": "ui.click",
|
||||
"message": "body > app-root > app-tracing > nav > a"
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588852.452,
|
||||
"category": "navigation",
|
||||
"data": {
|
||||
"from": "/tracing",
|
||||
"to": "/tracing-2"
|
||||
}
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588853.344,
|
||||
"category": "ui.click",
|
||||
"message": "body > app-root > app-tracing-2 > nav > a"
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588853.351,
|
||||
"category": "navigation",
|
||||
"data": {
|
||||
"from": "/tracing-2",
|
||||
"to": "/tracing-3"
|
||||
}
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588853.369,
|
||||
"category": "sentry.transaction",
|
||||
"event_id": "ed89609601d749f1b6d340b840478980",
|
||||
"message": "ed89609601d749f1b6d340b840478980"
|
||||
},
|
||||
{
|
||||
"timestamp": 1657588853.982,
|
||||
"category": "sentry.transaction",
|
||||
"event_id": "484c0306446245a7a22a2a4047937da2",
|
||||
"message": "484c0306446245a7a22a2a4047937da2"
|
||||
},
|
||||
{
|
||||
"timestamp": 1657589477.161,
|
||||
"category": "ui.click",
|
||||
"message": "body > app-root > app-tracing-3 > nav > a"
|
||||
},
|
||||
{
|
||||
"timestamp": 1657589481.582,
|
||||
"category": "ui.click",
|
||||
"message": "body > app-root > app-tracing-3 > nav > a"
|
||||
},
|
||||
{
|
||||
"timestamp": 1657589481.619,
|
||||
"category": "navigation",
|
||||
"data": {
|
||||
"from": "/tracing-3",
|
||||
"to": "/tracing-2"
|
||||
}
|
||||
}
|
||||
],
|
||||
"request": {
|
||||
"url": "http://localhost:4201/tracing-2",
|
||||
"headers": {
|
||||
"User-Agent": "Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -1,528 +0,0 @@
|
||||
[
|
||||
{
|
||||
"event_id": "35b3e388b2eb4753a60ae9943626e3bc",
|
||||
"sent_at": "2020-12-30T00:46:37.628Z"
|
||||
},
|
||||
{
|
||||
"type": "transaction",
|
||||
"sample_rates": [{ "id": "client_rate", "rate": "1" }]
|
||||
},
|
||||
{
|
||||
"contexts": {
|
||||
"trace": {
|
||||
"op": "pageload",
|
||||
"span_id": "a133c27dc47e7aa0",
|
||||
"tags": {
|
||||
"__sentry_samplingMethod": "client_rate",
|
||||
"__sentry_sampleRate": "1",
|
||||
"hardwareConcurrency": "8"
|
||||
},
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
}
|
||||
},
|
||||
"spans": [
|
||||
{
|
||||
"data": {
|
||||
"type": "xhr",
|
||||
"method": "GET",
|
||||
"url": "http://localhost:4201/sockjs-node/info?t=1609289196609"
|
||||
},
|
||||
"description": "GET http://localhost:4201/sockjs-node/info?t=1609289196609",
|
||||
"op": "http",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a7407cde318bdc8a",
|
||||
"start_timestamp": 1609289196.61,
|
||||
"status": "ok",
|
||||
"tags": { "http.status_code": "200" },
|
||||
"timestamp": 1609289196.616,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "unloadEvent",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8eb61fd4a8b455fb",
|
||||
"start_timestamp": 1609289196.442,
|
||||
"timestamp": 1609289196.442,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "domContentLoadedEvent",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b07d15804415324b",
|
||||
"start_timestamp": 1609289196.604,
|
||||
"timestamp": 1609289196.604,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "loadEvent",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "9fafc65a72e38c38",
|
||||
"start_timestamp": 1609289196.604,
|
||||
"timestamp": 1609289196.604,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "connect",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a7a78cccbf42b78d",
|
||||
"start_timestamp": 1609289196.433,
|
||||
"timestamp": 1609289196.433,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "domainLookup",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b5a567978ef2d3aa",
|
||||
"start_timestamp": 1609289196.433,
|
||||
"timestamp": 1609289196.433,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "request",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "aae9e36596422dbc",
|
||||
"start_timestamp": 1609289196.437,
|
||||
"timestamp": 1609289196.438,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "response",
|
||||
"op": "browser",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8721b4652b36a795",
|
||||
"start_timestamp": 1609289196.438,
|
||||
"timestamp": 1609289196.438,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"Transfer Size": 235,
|
||||
"Encoded Body Size": 144710,
|
||||
"Decoded Body Size": 144710
|
||||
},
|
||||
"description": "/polyfills.js",
|
||||
"op": "resource.script",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "93f7028f2492d976",
|
||||
"start_timestamp": 1609289196.444,
|
||||
"timestamp": 1609289196.457,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"Transfer Size": 236,
|
||||
"Encoded Body Size": 3405569,
|
||||
"Decoded Body Size": 3405569
|
||||
},
|
||||
"description": "/vendor.js",
|
||||
"op": "resource.script",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8da2a1b55b59ff27",
|
||||
"start_timestamp": 1609289196.444,
|
||||
"timestamp": 1609289196.46,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"Transfer Size": 234,
|
||||
"Encoded Body Size": 6299,
|
||||
"Decoded Body Size": 6299
|
||||
},
|
||||
"description": "/runtime.js",
|
||||
"op": "resource.script",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a62c9439e9342bce",
|
||||
"start_timestamp": 1609289196.444,
|
||||
"timestamp": 1609289196.457,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"Transfer Size": 232,
|
||||
"Encoded Body Size": 119,
|
||||
"Decoded Body Size": 119
|
||||
},
|
||||
"description": "/styles.css",
|
||||
"op": "resource.link",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "82da34c19664235b",
|
||||
"start_timestamp": 1609289196.444,
|
||||
"timestamp": 1609289196.456,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"Transfer Size": 234,
|
||||
"Encoded Body Size": 26269,
|
||||
"Decoded Body Size": 26269
|
||||
},
|
||||
"description": "/main.js",
|
||||
"op": "resource.script",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "855dbece0a4a9f9a",
|
||||
"start_timestamp": 1609289196.445,
|
||||
"timestamp": 1609289196.462,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"Transfer Size": 0,
|
||||
"Encoded Body Size": 948,
|
||||
"Decoded Body Size": 948
|
||||
},
|
||||
"description": "/favicon.ico",
|
||||
"op": "resource.other",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8ea5bd52f0c2ebd9",
|
||||
"start_timestamp": 1609289196.451,
|
||||
"timestamp": 1609289196.615,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "9d5446a9cb74f242",
|
||||
"start_timestamp": 1609289196.473,
|
||||
"timestamp": 1609289196.473,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "9eac7e173fc3f950",
|
||||
"start_timestamp": 1609289196.473,
|
||||
"timestamp": 1609289196.473,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:ZoneAwarePromise",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b5a996f18bbfe29e",
|
||||
"start_timestamp": 1609289196.473,
|
||||
"timestamp": 1609289196.473,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:ZoneAwarePromise",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "9d27c81de3137726",
|
||||
"start_timestamp": 1609289196.473,
|
||||
"timestamp": 1609289196.474,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:toString",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "bef7c36b55bef357",
|
||||
"start_timestamp": 1609289196.474,
|
||||
"timestamp": 1609289196.474,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:toString",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8a2917270f6f04ca",
|
||||
"start_timestamp": 1609289196.474,
|
||||
"timestamp": 1609289196.474,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:requestAnimationFrame",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b4b7e2fe19c6141b",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:util",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "bd81c8378aac3a7e",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:util",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a7883d2eefb1ebbc",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:legacy",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "85706f2ab75bfdb5",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:legacy",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "af42128c5d96f5db",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:timers",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "90790ab2afad7390",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:timers",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "94002fc4fb74fefd",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:requestAnimationFrame",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b24f200ce2a97c6e",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:blocking",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a724d987d623deef",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:blocking",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "9a2e9c32162a9c5c",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:EventTarget",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8f44d3e5431ef11f",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.475,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:EventTarget",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b41346fbb4367be7",
|
||||
"start_timestamp": 1609289196.475,
|
||||
"timestamp": 1609289196.477,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:on_property",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "9b7de11f174c041c",
|
||||
"start_timestamp": 1609289196.477,
|
||||
"timestamp": 1609289196.477,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:on_property",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8929ee002782b3ec",
|
||||
"start_timestamp": 1609289196.477,
|
||||
"timestamp": 1609289196.481,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:customElements",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b147edaa7e2fad57",
|
||||
"start_timestamp": 1609289196.481,
|
||||
"timestamp": 1609289196.481,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:XHR",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8afd32740c301e05",
|
||||
"start_timestamp": 1609289196.481,
|
||||
"timestamp": 1609289196.481,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:XHR",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "90abe73c39e1e093",
|
||||
"start_timestamp": 1609289196.481,
|
||||
"timestamp": 1609289196.481,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:geolocation",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b59200351a95948d",
|
||||
"start_timestamp": 1609289196.481,
|
||||
"timestamp": 1609289196.4819999,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:geolocation",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a739776ac4dcd1a0",
|
||||
"start_timestamp": 1609289196.481,
|
||||
"timestamp": 1609289196.481,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:customElements",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "90f3965b372cf961",
|
||||
"start_timestamp": 1609289196.481,
|
||||
"timestamp": 1609289196.481,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:PromiseRejectionEvent",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "8e8ac7cf7a424714",
|
||||
"start_timestamp": 1609289196.482,
|
||||
"timestamp": 1609289196.482,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "Zone:PromiseRejectionEvent",
|
||||
"op": "measure",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "a01a87453dac708f",
|
||||
"start_timestamp": 1609289196.482,
|
||||
"timestamp": 1609289196.482,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "sentry-tracing-init",
|
||||
"op": "mark",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "b0c7959922286bf0",
|
||||
"start_timestamp": 1609289196.558,
|
||||
"timestamp": 1609289196.558,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
},
|
||||
{
|
||||
"description": "first-contentful-paint",
|
||||
"op": "paint",
|
||||
"parent_span_id": "a133c27dc47e7aa0",
|
||||
"span_id": "83691247574aed87",
|
||||
"start_timestamp": 1609289196.558,
|
||||
"timestamp": 1609289196.558,
|
||||
"trace_id": "f35be933b211460a986593077f31cae7"
|
||||
}
|
||||
],
|
||||
"start_timestamp": 1609289196.433,
|
||||
"tags": { "hardwareConcurrency": "8" },
|
||||
"timestamp": 1609289196.616,
|
||||
"transaction": "/",
|
||||
"type": "transaction",
|
||||
"measurements": {
|
||||
"ttfb": { "value": 4.999876022338867 },
|
||||
"ttfb.requestTime": { "value": 1 },
|
||||
"fcp": { "value": 125 },
|
||||
"mark.fcp": { "value": 1609289196.558 }
|
||||
},
|
||||
"platform": "javascript",
|
||||
"sdk": {
|
||||
"name": "sentry.javascript.browser",
|
||||
"packages": [{ "name": "npm:@sentry/browser", "version": "5.29.2" }],
|
||||
"version": "5.29.2",
|
||||
"integrations": [
|
||||
"InboundFilters",
|
||||
"FunctionToString",
|
||||
"TryCatch",
|
||||
"Breadcrumbs",
|
||||
"GlobalHandlers",
|
||||
"LinkedErrors",
|
||||
"UserAgent",
|
||||
"BrowserTracing"
|
||||
]
|
||||
},
|
||||
"event_id": "35b3e388b2eb4753a60ae9943626e3bc",
|
||||
"environment": "production",
|
||||
"breadcrumbs": [
|
||||
{
|
||||
"timestamp": 1609289196.594,
|
||||
"category": "console",
|
||||
"data": {
|
||||
"arguments": [
|
||||
"Angular is running in development mode. Call enableProdMode() to enable production mode."
|
||||
],
|
||||
"logger": "console"
|
||||
},
|
||||
"level": "log",
|
||||
"message": "Angular is running in development mode. Call enableProdMode() to enable production mode."
|
||||
},
|
||||
{
|
||||
"timestamp": 1609289196.599,
|
||||
"category": "navigation",
|
||||
"data": { "from": "/", "to": "/" }
|
||||
},
|
||||
{
|
||||
"timestamp": 1609289196.607,
|
||||
"category": "ui.click",
|
||||
"message": "body > app-root > ol > li > button"
|
||||
},
|
||||
{
|
||||
"timestamp": 1609289196.616,
|
||||
"category": "xhr",
|
||||
"data": {
|
||||
"method": "GET",
|
||||
"url": "http://localhost:4201/sockjs-node/info?t=1609289196609",
|
||||
"status_code": 200
|
||||
},
|
||||
"type": "http"
|
||||
}
|
||||
],
|
||||
"request": {
|
||||
"url": "http://localhost:4201/",
|
||||
"headers": {
|
||||
"User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:84.0) Gecko/20100101 Firefox/84.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -249,8 +249,6 @@ INSTALLED_APPS += [
|
||||
"apps.alerts",
|
||||
"apps.environments",
|
||||
"apps.organizations_ext",
|
||||
"events",
|
||||
"issues",
|
||||
"apps.users",
|
||||
"apps.importer",
|
||||
"apps.uptime",
|
||||
|
||||
Whitespace-only changes.
@@ -1,265 +0,0 @@
|
||||
# Generated by Django 3.1.5 on 2021-01-17 17:02
|
||||
|
||||
import django.contrib.postgres.fields.jsonb
|
||||
import django.contrib.postgres.indexes
|
||||
import django.contrib.postgres.search
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
import django.utils.timezone
|
||||
import uuid
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
(
|
||||
"releases",
|
||||
"0001_squashed_0004_alter_release_id_alter_releasefile_id_and_more",
|
||||
),
|
||||
(
|
||||
"projects",
|
||||
"0001_squashed_0009_alter_project_id_alter_projectcounter_id_and_more",
|
||||
),
|
||||
(
|
||||
"projects",
|
||||
"0001_squashed_0009_alter_project_id_alter_projectcounter_id_and_more",
|
||||
),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name="EventTag",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.AutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("key", models.CharField(max_length=255)),
|
||||
("value", models.CharField(max_length=225)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="Issue",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.AutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("created", models.DateTimeField(auto_now_add=True, db_index=True)),
|
||||
("culprit", models.CharField(blank=True, max_length=1024, null=True)),
|
||||
("has_seen", models.BooleanField(default=False)),
|
||||
("is_public", models.BooleanField(default=False)),
|
||||
(
|
||||
"level",
|
||||
models.PositiveSmallIntegerField(
|
||||
choices=[
|
||||
(0, "sample"),
|
||||
(1, "debug"),
|
||||
(2, "info"),
|
||||
(3, "warning"),
|
||||
(4, "error"),
|
||||
(5, "fatal"),
|
||||
],
|
||||
default=0,
|
||||
),
|
||||
),
|
||||
("metadata", django.contrib.postgres.fields.jsonb.JSONField()),
|
||||
("title", models.CharField(max_length=255)),
|
||||
(
|
||||
"type",
|
||||
models.PositiveSmallIntegerField(
|
||||
choices=[(0, "default"), (1, "error"), (2, "csp")], default=0
|
||||
),
|
||||
),
|
||||
(
|
||||
"status",
|
||||
models.PositiveSmallIntegerField(
|
||||
choices=[(0, "unresolved"), (1, "resolved"), (2, "ignored")],
|
||||
default=0,
|
||||
),
|
||||
),
|
||||
(
|
||||
"project",
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="projects.project",
|
||||
),
|
||||
),
|
||||
("count", models.PositiveIntegerField(default=1, editable=False)),
|
||||
(
|
||||
"last_seen",
|
||||
models.DateTimeField(
|
||||
auto_now_add=True, default=django.utils.timezone.now
|
||||
),
|
||||
),
|
||||
(
|
||||
"search_vector",
|
||||
django.contrib.postgres.search.SearchVectorField(
|
||||
editable=False, null=True
|
||||
),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"unique_together": {("title", "culprit", "project", "type")},
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="Event",
|
||||
fields=[
|
||||
(
|
||||
"event_id",
|
||||
models.UUIDField(
|
||||
default=uuid.uuid4,
|
||||
editable=False,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
),
|
||||
),
|
||||
(
|
||||
"timestamp",
|
||||
models.DateTimeField(
|
||||
blank=True,
|
||||
help_text="Date created as claimed by client it came from",
|
||||
null=True,
|
||||
),
|
||||
),
|
||||
("created", models.DateTimeField(auto_now_add=True, db_index=True)),
|
||||
("data", django.contrib.postgres.fields.jsonb.JSONField()),
|
||||
(
|
||||
"issue",
|
||||
models.ForeignKey(
|
||||
help_text="Sentry calls this a group",
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="issues.issue",
|
||||
),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"ordering": ["-created"],
|
||||
},
|
||||
),
|
||||
migrations.AddIndex(
|
||||
model_name="issue",
|
||||
index=django.contrib.postgres.indexes.GinIndex(
|
||||
fields=["search_vector"], name="search_vector_idx"
|
||||
),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="issue",
|
||||
name="short_id",
|
||||
field=models.PositiveIntegerField(null=True),
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name="issue",
|
||||
unique_together={
|
||||
("title", "culprit", "project", "type"),
|
||||
("project", "short_id"),
|
||||
},
|
||||
),
|
||||
migrations.RunSQL(
|
||||
sql="\nDROP TRIGGER IF EXISTS increment_project_counter on issues_issue;\n\nCREATE OR REPLACE FUNCTION increment_project_counter() RETURNS trigger AS $$\nDECLARE\n counter_value int;\nBEGIN\n INSERT INTO projects_projectcounter (value, project_id)\n VALUES (0, NEW.project_id)\n ON CONFLICT (project_id) DO UPDATE SET value = projects_projectcounter.value + 1\n RETURNING value into counter_value;\n NEW.short_id=counter_value;\n RETURN NEW;\nEND;\n$$ LANGUAGE plpgsql;;\n\nCREATE TRIGGER increment_project_counter BEFORE INSERT\nON issues_issue FOR EACH ROW EXECUTE PROCEDURE\nincrement_project_counter();\n",
|
||||
reverse_sql="DROP TRIGGER IF EXISTS increment_project_counter on issues_issue; DROP FUNCTION IF EXISTS increment_project_counter;",
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="EventTagKey",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.AutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("key", models.CharField(max_length=255, unique=True)),
|
||||
],
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="event",
|
||||
name="tags",
|
||||
field=models.ManyToManyField(blank=True, to="issues.EventTag"),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="eventtag",
|
||||
name="key",
|
||||
field=models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE, to="issues.eventtagkey"
|
||||
),
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name="eventtag",
|
||||
unique_together={("key", "value")},
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="event",
|
||||
name="data",
|
||||
field=models.JSONField(),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="issue",
|
||||
name="metadata",
|
||||
field=models.JSONField(),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="issue",
|
||||
name="last_seen",
|
||||
field=models.DateTimeField(auto_now_add=True, db_index=True),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name="event",
|
||||
name="release",
|
||||
field=models.ForeignKey(
|
||||
blank=True,
|
||||
null=True,
|
||||
on_delete=django.db.models.deletion.SET_NULL,
|
||||
to="releases.release",
|
||||
),
|
||||
),
|
||||
migrations.SeparateDatabaseAndState(
|
||||
database_operations=[
|
||||
migrations.AlterModelTable(
|
||||
name="Event",
|
||||
table="events_event",
|
||||
),
|
||||
migrations.AlterModelTable(
|
||||
name="EventTagKey",
|
||||
table="events_eventtagkey",
|
||||
),
|
||||
migrations.AlterModelTable(
|
||||
name="EventTag",
|
||||
table="events_eventtag",
|
||||
),
|
||||
],
|
||||
state_operations=[
|
||||
migrations.DeleteModel(
|
||||
name="Event",
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name="EventTagKey",
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name="EventTag",
|
||||
),
|
||||
],
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name="issue",
|
||||
name="type",
|
||||
field=models.PositiveSmallIntegerField(
|
||||
choices=[(0, "default"), (1, "error"), (2, "csp"), (3, "transaction")],
|
||||
default=0,
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -1,27 +0,0 @@
|
||||
# Generated by Django 3.1.7 on 2021-02-19 19:31
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0001_squashed_0010_auto_20210117_1543"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="issue",
|
||||
name="level",
|
||||
field=models.PositiveSmallIntegerField(
|
||||
choices=[
|
||||
(0, "sample"),
|
||||
(1, "debug"),
|
||||
(2, "info"),
|
||||
(3, "warning"),
|
||||
(4, "error"),
|
||||
(5, "fatal"),
|
||||
],
|
||||
default=4,
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -1,19 +0,0 @@
|
||||
# Generated by Django 3.2 on 2021-04-09 16:16
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0002_auto_20210219_1931"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="issue",
|
||||
name="id",
|
||||
field=models.BigAutoField(
|
||||
auto_created=True, primary_key=True, serialize=False, verbose_name="ID"
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -1,19 +0,0 @@
|
||||
# Generated by Django 3.2 on 2021-04-11 19:13
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0003_alter_issue_id"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="issue",
|
||||
name="id",
|
||||
field=models.AutoField(
|
||||
auto_created=True, primary_key=True, serialize=False, verbose_name="ID"
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -1,19 +0,0 @@
|
||||
# Generated by Django 3.2.8 on 2021-10-09 23:02
|
||||
|
||||
from django.db import migrations, models
|
||||
from .sql.triggers import UPDATE_ISSUE_TRIGGER
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0004_alter_issue_id"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="issue",
|
||||
name="tags",
|
||||
field=models.JSONField(default=dict),
|
||||
),
|
||||
migrations.RunSQL(UPDATE_ISSUE_TRIGGER, UPDATE_ISSUE_TRIGGER),
|
||||
]
|
||||
@@ -1,11 +0,0 @@
|
||||
# Generated by Django 4.0.1 on 2022-01-20 00:40
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0005_issue_tags"),
|
||||
]
|
||||
|
||||
operations = []
|
||||
@@ -1,11 +0,0 @@
|
||||
# Generated by Django 4.0.6 on 2022-07-15 20:48
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0006_auto_20220120_0040"),
|
||||
]
|
||||
|
||||
operations = []
|
||||
@@ -1,11 +0,0 @@
|
||||
# Generated by Django 4.1.3 on 2022-11-14 20:29
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0007_auto_20220715_2048"),
|
||||
]
|
||||
|
||||
operations = []
|
||||
@@ -1,19 +0,0 @@
|
||||
# Generated by Django 4.1.3 on 2022-11-29 15:48
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0008_auto_20221114_2029"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name="issue",
|
||||
name="id",
|
||||
field=models.BigAutoField(
|
||||
auto_created=True, primary_key=True, serialize=False, verbose_name="ID"
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -1,11 +0,0 @@
|
||||
# Generated by Django 4.1.3 on 2022-12-02 01:10
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0009_alter_issue_id"),
|
||||
]
|
||||
|
||||
operations = []
|
||||
@@ -1,11 +0,0 @@
|
||||
# Generated by Django 4.1.4 on 2023-01-23 07:36
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("issues", "0010_auto_20221202_0110"),
|
||||
]
|
||||
|
||||
operations = []
|
||||
@@ -1,48 +0,0 @@
|
||||
# Generated by Django 4.1.7 on 2023-03-21 13:08
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
("issues", "0011_auto_20230123_0736"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name="Comment",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("created", models.DateTimeField(auto_now_add=True, db_index=True)),
|
||||
("text", models.TextField(blank=True, null=True)),
|
||||
(
|
||||
"issue",
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE, to="issues.issue"
|
||||
),
|
||||
),
|
||||
(
|
||||
"user",
|
||||
models.ForeignKey(
|
||||
null=True,
|
||||
on_delete=django.db.models.deletion.SET_NULL,
|
||||
to=settings.AUTH_USER_MODEL,
|
||||
),
|
||||
),
|
||||
],
|
||||
options={
|
||||
"abstract": False,
|
||||
},
|
||||
),
|
||||
]
|
||||
@@ -1,56 +0,0 @@
|
||||
# Generated by Django 4.2.2 on 2023-07-07 18:36
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
("projects", "0011_transactioneventprojecthourlystatistic"),
|
||||
("issues", "0012_comment"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name="comment",
|
||||
options={"ordering": ("-created",)},
|
||||
),
|
||||
migrations.AlterUniqueTogether(
|
||||
name="issue",
|
||||
unique_together={("project", "short_id")},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name="IssueHash",
|
||||
fields=[
|
||||
(
|
||||
"id",
|
||||
models.BigAutoField(
|
||||
auto_created=True,
|
||||
primary_key=True,
|
||||
serialize=False,
|
||||
verbose_name="ID",
|
||||
),
|
||||
),
|
||||
("value", models.UUIDField(db_index=True)),
|
||||
(
|
||||
"issue",
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE, to="issues.issue"
|
||||
),
|
||||
),
|
||||
(
|
||||
"project",
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
to="projects.project",
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
migrations.AddConstraint(
|
||||
model_name="issuehash",
|
||||
constraint=models.UniqueConstraint(
|
||||
fields=("project", "value"), name="project hash"
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -1,39 +0,0 @@
|
||||
# Generated by Django 5.0.3 on 2024-03-18 14:30
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('events', '0005_delete_event'),
|
||||
('issues', '0013_alter_comment_options_alter_issue_unique_together_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterUniqueTogether(
|
||||
name='issue',
|
||||
unique_together=None,
|
||||
),
|
||||
migrations.RemoveField(
|
||||
model_name='issue',
|
||||
name='project',
|
||||
),
|
||||
migrations.RemoveField(
|
||||
model_name='issuehash',
|
||||
name='issue',
|
||||
),
|
||||
migrations.RemoveField(
|
||||
model_name='issuehash',
|
||||
name='project',
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name='Comment',
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name='Issue',
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name='IssueHash',
|
||||
),
|
||||
]
|
||||
Whitespace-only changes.
@@ -1,25 +0,0 @@
|
||||
# No longer used
|
||||
UPDATE_ISSUE_TRIGGER = """
|
||||
DROP TRIGGER IF EXISTS event_issue_update on events_event;
|
||||
"""
|
||||
|
||||
INCREMENT_PROJECT_COUNTER_TRIGGER = """
|
||||
DROP TRIGGER IF EXISTS increment_project_counter on issues_issue;
|
||||
|
||||
CREATE OR REPLACE FUNCTION increment_project_counter() RETURNS trigger AS $$
|
||||
DECLARE
|
||||
counter_value int;
|
||||
BEGIN
|
||||
INSERT INTO projects_projectcounter (value, project_id)
|
||||
VALUES (0, NEW.project_id)
|
||||
ON CONFLICT (project_id) DO UPDATE SET value = projects_projectcounter.value + 1
|
||||
RETURNING value into counter_value;
|
||||
NEW.short_id=counter_value;
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;;
|
||||
|
||||
CREATE TRIGGER increment_project_counter BEFORE INSERT
|
||||
ON issues_issue FOR EACH ROW EXECUTE PROCEDURE
|
||||
increment_project_counter();
|
||||
"""
|
||||
Reference in new issue
Block a user