{"id":13698820,"url":"https://github.com/fabianlupa/abap-log","last_synced_at":"2025-10-12T12:27:26.094Z","repository":{"id":86006133,"uuid":"81438973","full_name":"fabianlupa/abap-log","owner":"fabianlupa","description":"Logging library for ABAP","archived":false,"fork":false,"pushed_at":"2023-09-29T11:44:50.000Z","size":195,"stargazers_count":35,"open_issues_count":2,"forks_count":12,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-09-26T13:21:03.592Z","etag":null,"topics":["abap","abap-log","abapgit","sap","zalog"],"latest_commit_sha":null,"homepage":null,"language":"ABAP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fabianlupa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2017-02-09T10:32:15.000Z","updated_at":"2024-06-11T06:15:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"db2939d4-6c1d-44cc-9d14-c288ca85e950","html_url":"https://github.com/fabianlupa/abap-log","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fabianlupa%2Fabap-log","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fabianlupa%2Fabap-log/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fabianlupa%2Fabap-log/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fabianlupa%2Fabap-log/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fabianlupa","download_url":"https://codeload.github.com/fabianlupa/abap-log/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219866820,"owners_count":16555824,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["abap","abap-log","abapgit","sap","zalog"],"created_at":"2024-08-02T19:00:53.428Z","updated_at":"2025-10-12T12:27:21.047Z","avatar_url":"https://github.com/fabianlupa.png","language":"ABAP","funding_links":[],"categories":["Categories"],"sub_categories":["📝 Logging"],"readme":"# abap-log [![Build Status](https://travis-ci.org/flaiker/abap-log.svg?branch=master)](https://travis-ci.org/flaiker/abap-log) [![ABAP Doc](https://img.shields.io/badge/ABAP%20Doc-latest-blue.svg)](https://flaiker.github.io/abap-log/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\nLogging library for ABAP\n\n## Overview\n_abap-log_ is a library to provide various ways of logging messages in ABAP. The goal is to have a common interface for logger objects so that dependency injection can be used and logging-actions can be decoupled from application logic. Inline string log messages as well as message-class-based messages are supported.\n\n### Supported targets\n- Internal table\n- Application log (BC-SRV-BAL)\n- `MESSAGE`-statements for batch processing (job log)\n- SAP GUI progress indicator\n- Custom database tables\n- Log text files on the application server\n- Eclipse console (using [IF_OO_ADT_CLASSRUN](https://help.sap.com/viewer/c238d694b825421f940829321ffa326a/7.51.1/en-US/520a4e84024b4a96b3793775bf9e6844.html))\n\n### Examples\nExample programs for each logger can be found in the package [ZALOG_EXAMPLE](https://github.com/flaiker/abap-log/tree/master/src/example).\n\n**Console logging in ABAP 7.51**\n\u003cimg src=\"https://github.com/flaiker/abap-log/wiki/rendered/console.png\"\u003e\n\n**Internal table logging**\n```abap\nREPORT zalog_example.\n\nDATA(go_logger) = NEW zcl_alog_itab_logger( ).\n\ngo_logger-\u003einfo( `Hello world.` ) ##NO_TEXT.\ngo_logger-\u003ewarning( `Hello darkness my old friend.` ) ##NO_TEXT.\ngo_logger-\u003eerror( `Ive come to talk with you again.` ) ##NO_TEXT.\ngo_logger-\u003edebug( `BEEP BOOP` ) ##NO_TEXT.\ngo_logger-\u003eexception( NEW zcx_alog_argument_null( ) ).\n\nMESSAGE s000(zalog) WITH 'Hello from message class' INTO DATA(gv_dummy) ##NEEDED ##NO_TEXT.\ngo_logger-\u003einfo_msg( ).\n\ngo_logger-\u003ewarning_msg(\n  iv_msgid = 'ZALOG'\n  iv_msgno = '001'\n  iv_msgv1 = 'Hello from message class'\n  iv_msgv2 = 'without where used list support...'\n) ##NO_TEXT.\n\nTRY.\n    go_logger-\u003edisplay_as_alv( ).\n  CATCH cx_salv_msg INTO DATA(gx_ex).\n    MESSAGE gx_ex TYPE 'E'.\nENDTRY.\n```\n\n**Java style logging**\n```abap\nCLASS lcl_class_with_logging DEFINITION.\n  PUBLIC SECTION.\n    CLASS-METHODS:\n      class_constructor.\n    METHODS:\n      run.\n  PRIVATE SECTION.\n    CLASS-DATA:\n      gi_logger TYPE REF TO zif_alog_logger.\nENDCLASS.\n\nCLASS lcl_class_with_logging IMPLEMENTATION.\n  METHOD class_constructor.\n    DATA: lo_dummy TYPE REF TO lcl_class_with_logging ##NEEDED.\n    gi_logger = zcl_alog_static_logger=\u003eget_logger_for_any( lo_dummy ).\n  ENDMETHOD.\n\n  METHOD run.\n    gi_logger-\u003einfo( `Info message` ) ##NO_TEXT.\n    gi_logger-\u003ewarning( `WARNING` ) ##NO_TEXT.\n  ENDMETHOD.\nENDCLASS.\n```\n\n### API and documentation\nLibrary documentation is done using ABAP Doc and can be found [here](https://flaiker.github.io/abap-log/) as deployed HTML. It can also be viewed in eclipse in the _ABAP Element Info_ view (F2).\n\n**Class diagram**\n\u003cbr/\u003e\u003cimg src=\"https://github.com/flaiker/abap-log/wiki/rendered/API.png\"\u003e\n\n\n## Installation\nTo use this library at least ABAP 740 must be supported by the application server. The reason for this is mostly the new syntax which is heavily used.\n- Clone the repository via [abapGit](https://github.com/larshp/abapGit)\n- Recommended target package: ZALOG\n\n## Development\nFeel free to contribute using pull requests or issues for feature requests and bug reports. This project has been entirely developed in the ABAP Development Tools for eclipse, including ABAP Doc documentation (which is automatically deployed to GitHub pages) and class based exceptions (these cannot be fully edited in SE24 (!)). Using eclipse is therefore highly recommended.\n\n## License\n[MIT License Copyright (c) 2017 Fabian Lupa](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffabianlupa%2Fabap-log","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffabianlupa%2Fabap-log","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffabianlupa%2Fabap-log/lists"}