fixxes for log views

This commit is contained in:
oberon 2026-02-14 14:15:00 +01:00
parent 8740e54dfd
commit 075c4c990e
4 changed files with 42 additions and 14 deletions

View File

@ -1,12 +0,0 @@
// static/js/highlight.log.js
hljs.registerLanguage('log', function(hljs) {
return {
contains: [
{ className: 'timestamp', begin: /^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}/, relevance: 10 },
{ className: 'level', begin: /\| (INFO|WARNING|ERROR|DEBUG|CRITICAL) +\|/, relevance: 10 },
{ className: 'traceback', begin: /Traceback/, end: /$/, contains: [hljs.BACKSLASH_ESCAPE] },
hljs.QUOTE_STRING_MODE,
hljs.NUMBER_MODE
]
};
});

40
static/js/hljs-log.js Normal file
View File

@ -0,0 +1,40 @@
// static/js/hljs-log.js einfache Log-Sprache für Flask-Logs
hljs.registerLanguage('flasklog', function(hljs) {
return {
contains: [
// Zeitstempel
{
className: 'timestamp',
begin: /^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}/,
relevance: 10
},
// Log-Level
{
className: 'level',
begin: /\| (INFO|WARNING|ERROR|DEBUG|CRITICAL) +\|/,
relevance: 10,
keywords: {
literal: 'INFO WARNING ERROR DEBUG CRITICAL'
}
},
// Traceback
{
className: 'traceback',
begin: /Traceback/,
end: /$/,
contains: [
hljs.BACKSLASH_ESCAPE,
{ className: 'file', begin: /File "/, end: /"/ }
]
},
// Dateipfad + Zeilennummer
{
className: 'path',
begin: /\//,
end: /:\d+/
},
hljs.QUOTE_STRING_MODE,
hljs.NUMBER_MODE
]
};
});

View File

@ -17,7 +17,7 @@
</div> </div>
<!-- --> <!-- -->
<pre class="bg-dark text-light p-4 rounded hljs" style="max-height: 70vh; overflow-y: auto; font-size: 0.95rem; white-space: pre-wrap; word-wrap: break-word; line-height: 1.5;"> <pre class="bg-dark text-light p-4 rounded hljs" style="max-height: 70vh; overflow-y: auto; font-size: 0.95rem; white-space: pre-wrap; word-wrap: break-word; line-height: 1.5;">
<code class="language-log"> <code class="language-flasklog">
{{ logs | safe }} {{ logs | safe }}
</code> </code>
</pre> </pre>

View File

@ -14,7 +14,7 @@
<!-- highlight.js für Syntax-Highlighting in Logs --> <!-- highlight.js für Syntax-Highlighting in Logs -->
<link rel="stylesheet" href="{{ url_for('static', filename='css/default.min.css') }}"> <link rel="stylesheet" href="{{ url_for('static', filename='css/default.min.css') }}">
<script src="{{ url_for('static', filename='js/highlight.min.js') }}"></script> <script src="{{ url_for('static', filename='js/highlight.min.js') }}"></script>
<script src="{{ url_for('static', filename='js/highlight.log.js') }}"></script> <script src="{{ url_for('static', filename='js/hljs-log.js') }}"></script>
<script>hljs.highlightAll();</script> <script>hljs.highlightAll();</script>
<!-- Eigenes CSS (optional später erweitern) --> <!-- Eigenes CSS (optional später erweitern) -->