CodeSite Live Viewer를 사용해 보았습니다.

9623 단어 델파이logging
그래 그래, 로그깅 도구로 CodeSite
(이 기사를 쓴 시점에서는 10.2 Tokyo Release 3)에서 CodeSite Live Viewer를 사용해 보았습니다.

CodeSide 란 무엇입니까?



한마디로 "로깅 시스템"입니다.
로깅이라고 하는 것은, 발생한 사건에 관한 정보(로그)를 일련의 형식으로 시계열에 기록·축적하는 것
로깅 시스템이라고 하는 것은, 기록·축적해, 그것을 관리·이용하는 구조
CodeSite Viewer는 로깅 정보를 Viewer라는 화면에 Live 표시하여 로그를 확인하고 분석할 수 있다는 것입니다.
자세한 내용은 라이제 사이트를 참조하십시오.

우선 설치



Windows 애플리케이션용 로깅 시스템이 내장되어 있습니다.
설치는 Getit을 통해 이루어집니다 (Community Edition에서도 사용할 수 있음)
1. 메뉴에서 Getit 시작

2. codesite로 좁혀 "설치"

3. 설치가 끝나면 Delphi가 다시 시작됩니다.


무료로 설치할 수 있는 것은 CodeSite Express라는 기능 한정판입니다.

설치가 끝나면 도구 메뉴에 CodeSite가 추가됩니다.

Windows 메뉴에도 추가됩니다.


뱀발



"CodeSite Method Tracer for Delphi"는 기능 한정판에서는 사용할 수 없다
선택하면 Express로 사용할 수 없다는 안내가 표시됩니다.

CodeSite Live Viewer 사용



메뉴에서 CodeSite Live Viewer를 선택하여 Viewer를 시작합니다.
이 화면에 로깅 정보가 라이브로 표시됩니다.

기본 사용법



VCL/FireMonkey 모두 사용할 수 있습니다.
Windows 애플리케이션(32/64비트)용으로만 제공됩니다.

소스 코드의 uses에 CodeSiteLogging을 추가하고 코드에 CodeSite 로깅 기능을 사용하는 코드를 작성하기 만하면됩니다.

단순히 로그를 보내는 간단한 샘플



양식에 버튼을 추가하여 OnClick 이벤트에 로그를 보내는 코드를 작성합니다.
// users に CodeSiteLogging を追加してね
procedure TForm3.Button1Click(Sender: TObject);
begin
  CodeSite.Send('Send: 自分の送ったログの数を覚えているのか?');
  CodeSite.SendMsg('SendMsg: ログを送ればよかろうなのだァァァァァァッ!!');
  CodeSite.SendNote('SendNote: 送るしかないな ポルナレフッ!');
  CodeSite.SendError('SendError: 君は送らならなくてはならないんだ');
  CodeSite.SendWarning('SendWarning: 依然変わりなくッ!');
  CodeSite.SendReminder('SendRemainder: ログを数えて落ち着くんだ・・・');
end;

뷰어 측에는 다음과 같이 표시됩니다.


일본어로도 문제없이 표시됩니다.

send 의 종류에는 여러 가지가 있어, Viewer 측에 표시되는 아이콘의 형식이 바뀝니다
그렇게 이해하기 쉽다.

메소드의 Enter/Exit를 알 수 있도록 로그를 보내는 샘플



EnterMethod, ExitMethod를 사용하면 로그가 구조화되어 표시됩니다.
단순히 메세지만 기술해 보낼 수도 있습니다만, 다음과 같이, 어느 오브젝트의 메소드인가를 알기 쉽게 기술할 수도 있습니다
코드는 이쪽
procedure TForm3.Button2Click(Sender: TObject);
begin
  CodeSite.EnterMethod(Button2, 'OnClick');
  CodeSite.Send('いいや限界だ!押すね!');
  ShowMessage('バイツァ・ダスト 処理中');
  CodeSite.SendWarning('戻ったぞ...');
  CodeSite.ExitMethod(Button2, 'OnClick');
end;

실행 결과는 여기


객체 정보를 로그에 보내는 샘플



또한 객체 및 변수 정보를 로그에 보낼 수 있습니다.

코드는 이쪽
procedure TForm3.Button3Click(Sender: TObject);
var
  E: TButton;
  I: Integer;
begin
  CodeSite.EnterMethod(Button3, 'OnClick');

  I := Button3.Tag + 1;
  Button3.Tag := I;

  CodeSite.Send('Object Check Button3', Button3);
  CodeSite.Send('Value I:', I);
  CodeSite.SendDateTime('SendDateTime: ', Now, 'YYYY/MM/DD HH:MM:SS');

  try
    E.Text := 'まだ Create していないので Exception発生';
  except
    on E: Exception do
    begin
      CodeSite.SendException('SendException:', E);
    end;

  end;

  CodeSite.ExitMethod(Button3, 'OnClick');
end;

Viewer 측에서 인스펙터(View | Inspector)를 표시하도록(듯이) 하면, 송신된 오브젝트에 대한 상세를 확인할 수 있습니다
음 편리

이 샘플에서는 Button의 Tag 속성 값을 +1로 설정하여 I 변수와 Tag 속성 값을 업데이트합니다.
버튼을 다시 누르면 +1 되어 있는 것이 로그에서도 확인할 수 있습니다

참고



Bob의
h tp // w w. dr 보 b42. 코 m/에미네 s/에아민 D2. htm
오래된 기사가 있지만 거의 변경되지 않았습니다.

어쩌면 속편을 쓸 것 같아 ...

좋은 웹페이지 즐겨찾기