| 요약 | 토픽의 첫 번째 게시물에서 hledger 저널을 실시간 대시보드로 렌더링합니다. | |
| 리포지토리 | gitea.kosmos.org/raucao/discourse-hledger | |
| 설치 가이드 | README |
기능
토픽의 첫 번째 게시물에 펜스된 hledger 코드 블록 안에 hledger 저널을 넣으면, 서버의 hledger 실행 파일이 필요 시 생성하는 5가지 보고서가 포함된 대시보드로 대체됩니다:
-
계정(Accounts) — 전체 잔액 트리, 모든 상위 계정이 확장된 상태. -
재무 상태표(Balance sheet) — 자산, 부채 및 자본으로 섹션이 접힘. -
손익계산서(P&L) — 수익과 비용. -
자본(Equity) — 기여 자본의 상품별 분배. -
저널(Journal) — 각 기입 항목이 포함된 거래 로그. -
보고서는 시작/종료 날짜 범위로 필터링할 수 있으며, 종료 날짜는 포함됩니다.
-
@username형식으로 작성된 계정 세그먼트(예:equity:@alice)는 일반적인 프로필 카드가 포함된 Discourse 멘션 링크가 됩니다. 기존 사용자만 링크됩니다. -
보고서는 필요 시 생성되며 게시물 개정별로 캐시되므로, 저널을 편집하면 보고서가 새로고침됩니다.
예시 블록
```hledger
2024-01-01 Opening balances
assets:bank:checking 1000.00 EUR
equity:alice -600.00 EUR
equity:bob -400.00 EUR
```
스크린샷
요구 사항
- 서버의
hledger실행 파일 (hledger 1.32.3에서 테스트됨). - Discourse 2.7.0 이상.
표준 Docker 설치의 경우, 플러그인과 hledger 패키지를 app.yml을 통해 설치하고 다시 빌드하십시오:
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://gitea.kosmos.org/raucao/discourse-hledger.git
- exec:
cd: $home
cmd:
- apt-get update
- DEBIAN_FRONTEND=noninteractive apt-get install -y hledger
설정
관리자 > 설정 > 플러그인에서 플러그인을 활성화합니다 (hledger enabled).- 토픽의 첫 번째 게시물에 hledger 저널을 추가합니다.
- 실행 파일이 기본
PATH에 없는 경우hledger path를 선택적으로 설정합니다.
설정 항목
| 이름 | 설명 |
|---|---|
hledger enabled |
플러그인을 활성화합니다. |
hledger path |
hledger 실행 파일의 경로 (기본값 hledger). |
hledger max journal bytes |
허용되는 저널의 최대 크기 (바이트 단위, 기본값 262144). |
hledger max journal lines |
저널의 최대 라인 수 (기본값 5000). |
hledger timeout seconds |
각 hledger 호출에 대한 실시간 제한 (기본값 10). |
hledger max output bytes |
캡처된 hledger 출력의 상한선 (기본값 1048576). |
hledger memory limit mb |
hledger 프로세스의 메모리 상한선; 0이면 비활성화 (기본값 256). |
hledger global rate limit per minute |
모든 사용자를 통한 보고서 생성의 상한선; 0이면 비활성화 (기본값 120). |
보안
저널은 신뢰할 수 없는 입력입니다. 이 플러그인은 hledger를 권한이 제한된 서브프로세스로 실행하며, 정리된 환경, 전용 작업 디렉터리, 강제 시간 초과, CPU/파일 크기/메모리 제한 및 출력 상한선을 적용하고 include 지시문을 거부합니다. 보고서는 뷰어가 볼 수 있는 토픽에 대해서만 반환되며, 요청은 IP당(30회/분) 및 전역으로 속도 제한됩니다.
호환성 및 라이선스
- MIT 라이선스
- 피드백, 버그 보고서 및 번역은 이 토픽이나 이메일, 소셜 미디어(ActivityPub/Nostr), 또는 채팅(XMPP)으로 raucao@kosmos.org로 환영합니다.


