LogViewer Bileşeni — sgcHTML | eSeGeCe

LogViewer

TsgcHTMLComponent_LogViewer — Delphi, C++ Builder ve .NET'te düzey filtresi, arama, otomatik kaydırma ve koyu/açık temalarla akışlı bir günlük / terminal görüntüleyici.

TsgcHTMLComponent_LogViewer

AddLine ile satır ekleyin, bunlar sınırlı bir halka arabellekte tutulur, ardından HTML özelliğini okuyun — ya da GetLastLineFragmentHTML ile bağlı istemcilere yeni satırlar akıtın.

Bileşen sınıfı

TsgcHTMLComponent_LogViewer

İşler

Araç çubuğu + terminal tarzı günlük gövdesi + kapsamlı CSS

Diller

Delphi, C++ Builder, .NET

Satırlar ekleyin, işleyin, güncellemeleri akıtın

Her giriş için AddLine'ı çağırın, ilk işleme için HTML'i okuyun, ardından GetLastLineFragmentHTML ile açık WebSocket istemcilerine yeni satırlar gönderin.

uses
  sgcHTML_Component_LogViewer;

var
  oLog: TsgcHTMLComponent_LogViewer;
begin
  oLog := TsgcHTMLComponent_LogViewer.Create(nil);
  try
    oLog.LogID := 'applog';
    oLog.Theme := ltDark;
    oLog.MaxLines := 500;
    oLog.Height := '400px';

    oLog.AddLine(llInfo, 'Service started', 'app');
    oLog.AddLine(llWarning, 'Low disk space', 'monitor');
    oLog.AddLine(llError, 'Connection refused', 'db');

    WebModule.Response := oLog.HTML;   // toolbar + log body + inline script
  finally
    oLog.Free;
  end;
end;

// Push one more line to every connected client, no full re-render:
oLog.AddLine(llInfo, 'New order received', 'orders');
TsgcHTMX_Engine_Server.BroadcastFragment(oLog.GetLastLineFragmentHTML);
// includes: sgcHTML_Component_LogViewer.hpp

TsgcHTMLComponent_LogViewer *oLog = new TsgcHTMLComponent_LogViewer(NULL);
try
{
  oLog->LogID = "applog";
  oLog->Theme = ltDark;
  oLog->MaxLines = 500;
  oLog->Height = "400px";

  oLog->AddLine(llInfo, "Service started", "app");
  oLog->AddLine(llWarning, "Low disk space", "monitor");
  oLog->AddLine(llError, "Connection refused", "db");

  String html = oLog->HTML;   // toolbar + log body + inline script

  // Push one more line to every connected client:
  oLog->AddLine(llInfo, "New order received", "orders");
  TsgcHTMX_Engine_Server::BroadcastFragment(oLog->GetLastLineFragmentHTML());
}
__finally
{
  delete oLog;
}
using esegece.sgcWebSockets;

var log = new TsgcHTMLComponent_LogViewer();
log.LogID = "applog";
log.Theme = TsgcHTMLLogTheme.ltDark;
log.MaxLines = 500;
log.Height = "400px";

log.AddLine(TsgcHTMLLogLevel.llInfo, "Service started", "app");
log.AddLine(TsgcHTMLLogLevel.llWarning, "Low disk space", "monitor");
log.AddLine(TsgcHTMLLogLevel.llError, "Connection refused", "db");

string html = log.HTML;   // toolbar + log body + inline script

// Push one more line to every connected client, no full re-render:
log.AddLine(TsgcHTMLLogLevel.llInfo, "New order received", "orders");
TsgcHTMX_Engine_Server.BroadcastFragment(log.GetLastLineFragmentHTML());

Temel özellikler & yöntemler

En sık başvurduğunuz üyeler.

Satır ekleme

AddLine(aLevel, aText, aSource), zaman damgalı bir giriş ekler; MaxLines (varsayılan 500), halka arabelleğini sınırlar ve en eski satırı düşürür. Clear onu boşaltır.

Düzeyler

TsgcHTMLLogLevelllTrace, llDebug, llInfo, llWarning, llError, llFatal — her biri Theme'e göre renk kodludur.

Araç çubuğu

ShowSearch, ShowLevelFilter ve Title, araç çubuğunu denetler; filtreleme ve vurgulama istemci tarafında çalışır, sunucuya gidiş-dönüş yoktur.

Otomatik kaydırma

AutoScroll, en yeni satırı izler; ShowAutoScrollToggle, okuyucunun geriye kaydırırken izlemeyi duraklatabilmesi için bir onay kutusu ekler.

Akış güncellemeleri

GetLastLineFragmentHTML / GetLineFragmentHTML(aIndex), TsgcHTMX_Engine_Server.PushFragment / BroadcastFragment için bant dışı bir parça işler.

Görünüm

Theme (ltDark / ltLight), WrapLines, Height, TimeFormat ve EmptyText, görünümü ince ayarlar.

Keşfetmeye devam edin

Çevrimiçi yardımBu bileşen için tam API referansı ve kullanım kılavuzu.
Tüm sgcHTML Bileşenleri80'den fazla bileşenin tam özellik matrisine göz atın.
Ücretsiz Deneme Sürümünü İndirin30 günlük deneme, 60.HTML demo projeleriyle birlikte gelir.
FiyatlandırmaTam kaynak kodlu Single, Team ve Site lisansları.

Başlamaya Hazır mısınız?

Ücretsiz deneme sürümünü indirin ve Delphi, C++ Builder ya da .NET web uygulamanıza canlı bir günlük görüntüleyici ekleyin.