mirror of
https://github.com/penpot/penpot.git
synced 2025-05-20 07:06:13 +02:00
✨ Minor improvements on error reporting.
Add missing expound.
This commit is contained in:
parent
9f7a04e330
commit
110fb2e8db
4 changed files with 22 additions and 7 deletions
|
@ -9,6 +9,12 @@ penpot - error report {{id}}
|
||||||
<div>[<a href="/dbg/error">⮜</a>]</div>
|
<div>[<a href="/dbg/error">⮜</a>]</div>
|
||||||
<div>[<a href="#context">context</a>]</div>
|
<div>[<a href="#context">context</a>]</div>
|
||||||
<div>[<a href="#params">request params</a>]</div>
|
<div>[<a href="#params">request params</a>]</div>
|
||||||
|
{% if data %}
|
||||||
|
<div>[<a href="#edata">error data</a>]</div>
|
||||||
|
{% endif %}
|
||||||
|
{% if spec-explain %}
|
||||||
|
<div>[<a href="#spec-explain">spec explain</a>]</div>
|
||||||
|
{% endif %}
|
||||||
{% if spec-problems %}
|
{% if spec-problems %}
|
||||||
<div>[<a href="#spec-problems">spec problems</a>]</div>
|
<div>[<a href="#spec-problems">spec problems</a>]</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -16,9 +22,6 @@ penpot - error report {{id}}
|
||||||
<div>[<a href="#spec-value">spec value</a>]</div>
|
<div>[<a href="#spec-value">spec value</a>]</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if data %}
|
|
||||||
<div>[<a href="#edata">error data</a>]</div>
|
|
||||||
{% endif %}
|
|
||||||
{% if trace %}
|
{% if trace %}
|
||||||
<div>[<a href="#trace">error trace</a>]</div>
|
<div>[<a href="#trace">error trace</a>]</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -55,6 +58,15 @@ penpot - error report {{id}}
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
{% if spec-explain %}
|
||||||
|
<div class="table-row multiline">
|
||||||
|
<div id="spec-explain" class="table-key">SPEC EXPLAIN: </div>
|
||||||
|
<div class="table-val">
|
||||||
|
<pre>{{spec-explain}}</pre>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
{% if spec-problems %}
|
{% if spec-problems %}
|
||||||
<div class="table-row multiline">
|
<div class="table-row multiline">
|
||||||
<div id="spec-problems" class="table-key">SPEC PROBLEMS: </div>
|
<div id="spec-problems" class="table-key">SPEC PROBLEMS: </div>
|
||||||
|
|
|
@ -150,14 +150,14 @@
|
||||||
(binding [ppr/*print-right-margin* 300]
|
(binding [ppr/*print-right-margin* 300]
|
||||||
(let [context (dissoc report
|
(let [context (dissoc report
|
||||||
:trace :cause :params :data :spec-problems
|
:trace :cause :params :data :spec-problems
|
||||||
:spec-value :error :explain :hint)
|
:spec-explain :spec-value :error :explain :hint)
|
||||||
params {:context (with-out-str (ppr/pprint context))
|
params {:context (with-out-str (ppr/pprint context))
|
||||||
:hint (:hint report)
|
:hint (:hint report)
|
||||||
|
:spec-explain (:spec-explain report)
|
||||||
:spec-problems (:spec-problems report)
|
:spec-problems (:spec-problems report)
|
||||||
:spec-value (:spec-value report)
|
:spec-value (:spec-value report)
|
||||||
:data (:data report)
|
:data (:data report)
|
||||||
:trace (or (:cause report)
|
:trace (or (:trace report)
|
||||||
(:trace report)
|
|
||||||
(some-> report :error :trace))
|
(some-> report :error :trace))
|
||||||
:params (:params report)}]
|
:params (:params report)}]
|
||||||
(-> (io/resource "templates/error-report.tmpl")
|
(-> (io/resource "templates/error-report.tmpl")
|
||||||
|
|
|
@ -12,6 +12,7 @@
|
||||||
[app.common.uuid :as uuid]
|
[app.common.uuid :as uuid]
|
||||||
[clojure.pprint]
|
[clojure.pprint]
|
||||||
[clojure.spec.alpha :as s]
|
[clojure.spec.alpha :as s]
|
||||||
|
[expound.alpha :as expound]
|
||||||
[cuerdas.core :as str]))
|
[cuerdas.core :as str]))
|
||||||
|
|
||||||
(defn- parse-client-ip
|
(defn- parse-client-ip
|
||||||
|
@ -31,6 +32,8 @@
|
||||||
:params (:params request)
|
:params (:params request)
|
||||||
:spec-problems (some-> data ::s/problems)
|
:spec-problems (some-> data ::s/problems)
|
||||||
:spec-value (some-> data ::s/value)
|
:spec-value (some-> data ::s/value)
|
||||||
|
:spec-explain (with-out-str
|
||||||
|
(expound/printer data))
|
||||||
:data (some-> data (dissoc ::s/problems ::s/value :hint))
|
:data (some-> data (dissoc ::s/problems ::s/value :hint))
|
||||||
:ip-addr (parse-client-ip request)
|
:ip-addr (parse-client-ip request)
|
||||||
:profile-id (:profile-id request)}
|
:profile-id (:profile-id request)}
|
||||||
|
|
|
@ -180,7 +180,7 @@
|
||||||
`(->> (ThreadContext/getImmutableContext)
|
`(->> (ThreadContext/getImmutableContext)
|
||||||
(send-off logging-agent
|
(send-off logging-agent
|
||||||
(fn [_# cdata#]
|
(fn [_# cdata#]
|
||||||
(with-context (into {:cause ~cause} cdata#)
|
(with-context (into {} cdata#)
|
||||||
(->> (or ~raw (build-map-message ~props))
|
(->> (or ~raw (build-map-message ~props))
|
||||||
(write-log! ~logger-sym ~level-sym ~cause))))))
|
(write-log! ~logger-sym ~level-sym ~cause))))))
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue