{"id":19209723,"url":"https://github.com/tmatijevich/userlog","last_synced_at":"2025-05-12T19:21:45.354Z","repository":{"id":167652535,"uuid":"406533737","full_name":"tmatijevich/UserLog","owner":"tmatijevich","description":"Write to user logbooks synchronously","archived":false,"fork":false,"pushed_at":"2024-04-14T04:21:00.000Z","size":163,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-12T19:21:43.427Z","etag":null,"topics":["automation-studio","iec61131-3","library","logging","verbosity"],"latest_commit_sha":null,"homepage":"","language":"C","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/tmatijevich.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,"publiccode":null,"codemeta":null}},"created_at":"2021-09-14T22:03:37.000Z","updated_at":"2025-03-06T20:36:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"9bd297e1-794b-43b4-bb4a-216174e09ced","html_url":"https://github.com/tmatijevich/UserLog","commit_stats":null,"previous_names":["tmatijevich/userlog"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmatijevich%2FUserLog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmatijevich%2FUserLog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmatijevich%2FUserLog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tmatijevich%2FUserLog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tmatijevich","download_url":"https://codeload.github.com/tmatijevich/UserLog/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253805983,"owners_count":21967078,"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":["automation-studio","iec61131-3","library","logging","verbosity"],"created_at":"2024-11-09T13:32:56.480Z","updated_at":"2025-05-12T19:21:45.334Z","avatar_url":"https://github.com/tmatijevich.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# UserLog\n\n[![Made for B\u0026R](https://raw.githubusercontent.com/hilch/BandR-badges/dfd5e264d7d2dd369fd37449605673f779db437d/Made-For-BrAutomation.svg)](https://www.br-automation.com)\n![GitHub License](https://img.shields.io/github/license/tmatijevich/UserLog)\n![GitHub Downloads (all assets, all releases)](https://img.shields.io/github/downloads/tmatijevich/UserLog/total)\n[![GitHub issues](https://img.shields.io/github/issues-raw/tmatijevich/UserLog)](https://github.com/tmatijevich/UserLog/issues)\n\nUserLog is an [Automation Studio](https://www.br-automation.com/en-us/products/software/automation-software/automation-studio/) library for writing to user logbooks synchronously.  \nUserLog's simple one-line functions provide an essential **diagnostic tool** for software development.\n\n**NOTE:** This is not an official library and is supported through the community.  UserLog is provided as-is under the [MIT License](https://mit-license.org/) agreement.  Source code, documentation, and issues are managed through [GitHub](https://github.com/tmatijevich/UserLog).\n\n![2023-11-17_15-06-35](https://github.com/tmatijevich/UserLog/assets/33841634/60dd7762-9ecd-48d2-9329-1b7271fbe130)\n\n# Features\n\n- :repeat: Write to logbooks synchronously\n- :pencil2: Fully customizable with message, code, and runtime data parameters\n- :warning: Suppress messages with adjustable severity level\n- :orange_book: Create custom logbooks\n- :clipboard: Compatible with text system\n\nFunction | Description\n---|---\n[UserLogBasic](https://github.com/tmatijevich/UserLog/blob/main/UserLog.fun?ts=4#L2) | Write to the User logbook synchronously\n[UserLogAdvanced](https://github.com/tmatijevich/UserLog/blob/main/UserLog.fun?ts=4#L10) | Write to the User logbook with runtime data\n[UserLogCustom](https://github.com/tmatijevich/UserLog/blob/main/UserLog.fun?ts=4#L19) | Write to any user logbook synchronously\n[UserLogEventText](https://github.com/tmatijevich/UserLog/blob/main/UserLog.fun?ts=4#L32) | Write to any user logbook through binary-encoded data and event texts\n[UserLogCreate](https://github.com/tmatijevich/UserLog/blob/main/UserLog.fun?ts=4#L43) | Create a custom logbook in an Init subroutine\n[UserLogSetSeverityLevel](https://github.com/tmatijevich/UserLog/blob/main/UserLog.fun?ts=4#L50) | Suppress messages below the input level and return previous level\n[UserLogGetSeverity](https://github.com/tmatijevich/UserLog/blob/main/UserLog.fun?ts=4#L56) | Get ArEventLog severity from an event ID\n[UserLogGetFacility](https://github.com/tmatijevich/UserLog/blob/main/UserLog.fun?ts=4#L62) | Get ArEventLog facility from an event ID\n[UserLogGetCode](https://github.com/tmatijevich/UserLog/blob/main/UserLog.fun?ts=4#L68) | Get ArEventLog code from an event ID\n\n# Install\n\n1. [Download](https://github.com/tmatijevich/UserLog/releases/latest/download/UserLog.zip) the binaries and extract the archive\n2. Add to the project as **existing library** from the toolbox in logical view\n\n# Build\n\n- Clone or download source files\n- Add to the project as **existing library**\n    - Option to add as **reference**\n\nAlternatively, add as submodule to an existing project repository.\n\n```\ncd \u003crepository\u003e\ngit submodule add https://github.com/tmatijevich/UserLog.git \u003cproject\u003e/Logical/Libraries/UserLog\n```\n\nThen add to project as **existing library**.\n\nUsers must add the following **additional build options** under the UserLog object's compiler properties in the software configuration.\n\n```\n-D IECSTRING_HEADER_EXPLICIT -D IECSTRING_FORMAT_TYPE_EXTERNAL\n```\n\n# Unit Tests\n\nSee the [UserLogProject](https://github.com/tmatijevich/UserLogProject) for unit tests of all functions.\n\n# Documentation\n\nOnce installed, the help file can be viewed using the `F1` function key.\n\nSee the [UserLogHelp](https://github.com/tmatijevich/UserLogHelp) for the documentation source code.\n\n### Dependencies\n\n- [ArEventLog](https://help.br-automation.com/#/en/4/libraries%2Fareventlog%2Fareventlog.html)\n- [sys_lib](https://help.br-automation.com/#/en/4/libraries%2Fsys_lib%2Fsys_lib.html)\n- [astime](https://help.br-automation.com/#/en/4/libraries%2Fastime%2Fastime.html)\n\n### Authors\n\n- Tyler Matijevich ([@tmatijevich](https://github.com/tmatijevich))\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmatijevich%2Fuserlog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftmatijevich%2Fuserlog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftmatijevich%2Fuserlog/lists"}