Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Error Viewer
#11
(09.07.2020, 06:08)Schnapsnase schrieb: ich glaube noch nicht, dass das die Ursache ist.
Die Datei wird ja am angegebenen Pfad gefunden. Die Anzeige im ACP ist korrekt, hat aber keinen Inhalt.
Nachdem ich durch Eure Ausführungen auch im Adminverzeichniss den Ordner logs-error angelegt habe und mal Testweise auch eine mybb.log (mit Inhalt) rein kopierte, wird nun ergänzend zum Front-End auch Admin-End angezeigt. Beide jedoch ohne Inhalt. Also der Fehler bei Klick auf Admin-End ist somit mal weg, was bedeutet dass die Pfade gefunden werden. Nur erfolgt bei beiden Ends keine Anzeige des Dateiinhalts.

Nebenfrage an die Profis:
Durch das PugIn habe ich zum ersten mal davon Kenntnis erlangt, dass auch im Admin-Ordner eine Fehlerdatei abgelegt würde. Ich gehe mal davon aus, dass der Entwickler in seinem PlugIn das Admin-End nicht aus Langeweile eingebunden hat. Im ACP finde ich keine individuellen Einstellungen dazu. Kann da jemand mehr dazu einbringen?
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an!  ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools [Unixzeit ⇔ Realzeit] ♦ [BOM-Finder] ♦ [SQL-Prefix-Changer] ♦ [USV-Rechner] ♦ [PlugIns]
Zitieren
#12
(09.07.2020, 07:31)Gerti schrieb: Ich gehe mal davon aus, dass der Entwickler in seinem PlugIn das Admin-End nicht aus Langeweile eingebunden hat. Im ACP finde ich keine individuellen Einstellungen dazu. Kann da jemand mehr dazu einbringen?

MyBB speichert die Logs unter dem Pfad, der im ACP hinterlegt ist.
Daher schrieb ich oben bereits, dass sich mir der Sinn in diesem Plugin nicht ganz erschließt.
Deine Frage würde mich also auch interessieren. Wink
Zitieren
#13
(09.07.2020, 07:44)Schnapsnase schrieb: Daher schrieb ich oben bereits, dass sich mir der Sinn in diesem Plugin nicht ganz erschließt.

Der Sinn des Plugins (ohne das ich mir die Beschreibung angesehen habe) ist für mich klar, denn:

a) nicht jeder Admin bekommt ggf. Zugriff auf FTP und soll trotzdem die Logs einsehen können
b) Gemütlichkeit
Zitieren
#14
Du hast mich nicht richtig verstanden.
Ich zweifle nicht den Sinn des Plugins an, sondern die unterschiedlichen Pfade zur Log-Datei.
Warum gibt es in diesem Plugin 2 Links mit unterschiedlichen Pfaden zur Log-Datei.
MyBB speichert nicht in 2 verschiedenen Pfaden. Somit erzeugt einer dieser Links immer einen Fehler, da die Datei nicht gefunden wird, oder ich lege im 2. Pfad eine leere Datei ab, damit keine Fehlermeldung entsteht.

Hier an dieser Stelle verstehe ich den Sinn nicht.
Das aber nur nebenbei, denn es ist nicht der Grund für das eigentliche Problem.
Zitieren
#15
(09.07.2020, 09:45)Schnapsnase schrieb: Das aber nur nebenbei, denn es ist nicht der Grund für das eigentliche Problem.

Nur mal so einen gedanklichen Einwurf eines Laien.

In der Datei ./admin/modules/tools/error_viewer.php wird (in den Zeilen 78 bis 105?) die Ausgabe definiert:
PHP-Code:
$page->add_breadcrumb_item($lang->error_viewer_error_log"index.php?module=tools-error_viewer");
$page->output_header($lang->error_viewer_error_log);
$baseurl "index.php?module=tools-error_viewer";
$table = new TABLE;
$location $mybb->get_input("location");
if(
$location == "admin")
{
    if(file_exists(MYBB_ROOT "/" $config['admin_dir'] . "/" $mybb->settings['errorloglocation']))
    {
        $filecontents file_get_contents(MYBB_ROOT "/" $config['admin_dir'] . "/" $mybb->settings['errorloglocation']);
    }
    else
    {
        $page->output_error($lang->error_viewer_file_not_found);
        $page->output_footer();
    }
}
else
{
    if(file_exists(MYBB_ROOT "/" $mybb->settings['errorloglocation']))
    {
        $filecontents file_get_contents(MYBB_ROOT "/" $mybb->settings['errorloglocation']);
        $location "user";
    }
    else
    {
        $page->output_error($lang->error_viewer_file_not_found);
        $page->output_footer();
    }
}

$sub_tabs = array(
    "user" => array(
        "title" => $lang->error_viewer_front_end,
        "link" => $baseurl "&location=user"
    ),
    "admin" => array(
        "title" => $lang->error_viewer_back_end,
        "link" => $baseurl "&location=admin"
    )
);

$page->output_nav_tabs($sub_tabs);

$entries explode("\n\n"$filecontents);
$itemcount count($entries);
$last $itemcount 1;
unset(
$entries[$last]);
if(
$mybb->input['page'])
{
    $current_page $mybb->get_input("page"MyBB::INPUT_INT);
}
else
{
    $current_page 1;
}
if(!
$current_page)
{
    $current_page 1;
}
$pages ceil($last 50);
if(
$current_page $pages)
{
    $current_page $pages;
}
$start $current_page 50 50;
$pagination draw_admin_pagination($current_page50$last"index.php?module=tools-error_viewer&location=" $location);

/* Flip the array so the newest errors are shown first since that is usually what admins want. */
$entries array_reverse($entries);
$error_array array_slice($entries$start50);

echo 
$pagination;

$table->construct_header($lang->error_viewer_date);
$table->construct_header($lang->error_viewer_time);
$table->construct_header($lang->error_viewer_file);
$table->construct_header($lang->error_viewer_line);
$table->construct_header($lang->error_viewer_type);
$table->construct_header($lang->error_viewer_message);
$table->construct_row();
foreach(
$error_array as $entry)
{
    $string preg_replace("/\A<error>\n\t<dateline>([0-9]+)<\/dateline>\n\t<script>(.*)<\/script>\n\t<line>([0-9]+)<\/line>\n\t<type>([0-9]+)<\/type>" .
        "\n\t<friendly_type>(.*)<\/friendly_type>\n\t<message>(.*)<\/message>\n<\/error>(.*?)\Z/is""$1--$2--$3--$4--$5--$6"$entry);
    $exstring explode("--"$string);
    $date my_date($mybb->settings['dateformat'], $exstring[0]);
    $time my_date($mybb->settings['timeformat'], $exstring[0]);
    $filename $exstring[1];
    $line $exstring[2];
    $friendly_type $exstring[4];
    $message nl2br($exstring[5]);
    $table->construct_cell($date);
    $table->construct_cell($time);
    $table->construct_cell($filename);
    $table->construct_cell($line);
    $table->construct_cell($friendly_type);
    $table->construct_cell($message);
    $table->construct_row();
}
$table->output($lang->error_viewer_errors_warnings);
echo 
$pagination;
$page->output_footer(); 
1. Kann es sein, dass:
a) die LOG-Datei nicht die vom PlugIn angeforderten Datenstruktur enthält?
oder
b) das im PlugIn nicht entsprechend der Datenstruktur der LOG-Datei definiert ist?

2. Gibt/gab es bei MyBB (ma(l die Unterscheidung der Anzeige von Fehlermeldungen zwischen "Front-End" und "Admin End" oder so was ähnliches?

Vielleicht hat sich seit Erstellung des PlugIns (obwohl für V1.8) die Datenstruktur der LOG-Datei geändert. Nur mal so als Denkanstoß.
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an!  ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools [Unixzeit ⇔ Realzeit] ♦ [BOM-Finder] ♦ [SQL-Prefix-Changer] ♦ [USV-Rechner] ♦ [PlugIns]
Zitieren
#16
(09.07.2020, 11:14)Gerti schrieb: Vielleicht hat sich seit Erstellung des PlugIns (obwohl für V1.8) die Datenstruktur der LOG-Datei geändert. Nur mal so als Denkanstoß.

Änderungen am Error Log wurden zB. in MyBB 1.8.20 vorgenommen, also rund 1 Jahr nachdem diese letzte Version des Plugins erschien.
Ob diese Änderungen nun die Ursache sind, habe ich nicht überprüft, aber eine Möglichkeit wäre es.
Zitieren
#17
(09.07.2020, 11:35)doylecc schrieb: Ob diese Änderungen nun die Ursache sind, habe ich nicht überprüft, aber eine Möglichkeit wäre es.

Bei dieser Änderung wurde offensichtlich nur die Funktion "backtrace" hinzugefügt, welches im Plugin noch nicht berücksichtigt ist.
Ich habe eine log-Datei mit nur einem Fehler und ohne Backtrace-Eintrag erstellt und getestet. - kein Erfolg
Zitieren
#18
Bei uns funktioniert das Plugin (Frontend & Adminbereich) ohne Probleme.

Hier die error.log Einstellungen:
   

Hast du eventuell den Admin-Ordner umbenannt und die Änderungen nicht in den Einstellungen geändert?
Zitieren
#19
(09.07.2020, 12:34)SvePu schrieb: Bei uns funktioniert das Plugin (Frontend & Adminbereich) ohne Probleme.

Wie ist das möglich?
Wenn bei Dir beide Links "Frontend & Adminend" funktionieren sollten, dann müssen doch auch zwei Error-Log-Dateien existieren, oder verstehe ich diesen Code falsch?! MyBB speichert aber nicht in zwei verschiedene Log-Dateien.
PHP-Code:
if($location == "admin")
{
    if(file_exists(MYBB_ROOT "/" $config['admin_dir'] . "/" $mybb->settings['errorloglocation']))
    {
        $filecontents file_get_contents(MYBB_ROOT "/" $config['admin_dir'] . "/" $mybb->settings['errorloglocation']);
    }
    else
    {
        $page->output_error($lang->error_viewer_file_not_found);
        $page->output_footer();
    }
}
else
{
    if(file_exists(MYBB_ROOT "/" $mybb->settings['errorloglocation']))
    {
        $filecontents file_get_contents(MYBB_ROOT "/" $mybb->settings['errorloglocation']);
        $location "user";
    }
    else
    {
        $page->output_error($lang->error_viewer_file_not_found);
        $page->output_footer();
    }
}

$sub_tabs = array(
    "user" => array(
        "title" => $lang->error_viewer_front_end,
        "link" => $baseurl "&location=user"
    ),
    "admin" => array(
        "title" => $lang->error_viewer_back_end,
        "link" => $baseurl "&location=admin"
    )
); 
Zitieren
#20
Bei uns werden zwei error.log erzeugt.
Eine im Forum-Root-Verzeichnis und eine im Admin-Verzeichnis.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  TS3 Viewer für das MyBB MyBB.de Bot 68 18.358 15.02.2024, 18:59
Letzter Beitrag: bv64
  Error Viewer V1.2 MyBB.de Bot 6 1.437 06.06.2023, 14:20
Letzter Beitrag: MyBB.de Bot
  Permission Viewer MyBB.de Bot 2 1.723 09.03.2017, 05:40
Letzter Beitrag: MyBB.de Bot
  Thread Viewer MyBB.de Bot 60 23.450 21.09.2013, 18:27
Letzter Beitrag: Licht