{"id":21244328,"url":"https://github.com/turquoisespace/throwable-utility","last_synced_at":"2026-04-09T12:01:14.276Z","repository":{"id":154080131,"uuid":"158937384","full_name":"TurquoiseSpace/throwable-utility","owner":"TurquoiseSpace","description":"Java JSON Utility for Throwable Exception and Error","archived":false,"fork":false,"pushed_at":"2023-08-14T08:24:25.000Z","size":47,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-21T20:11:38.488Z","etag":null,"topics":["aws","cloud","datadog","error","exception","gradle","java","json","logging","maven","splunk","throwable","utility"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TurquoiseSpace.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":"2018-11-24T13:09:22.000Z","updated_at":"2023-04-23T19:55:42.000Z","dependencies_parsed_at":"2023-08-17T23:03:26.035Z","dependency_job_id":null,"html_url":"https://github.com/TurquoiseSpace/throwable-utility","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TurquoiseSpace%2Fthrowable-utility","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TurquoiseSpace%2Fthrowable-utility/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TurquoiseSpace%2Fthrowable-utility/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TurquoiseSpace%2Fthrowable-utility/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TurquoiseSpace","download_url":"https://codeload.github.com/TurquoiseSpace/throwable-utility/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243683534,"owners_count":20330643,"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":["aws","cloud","datadog","error","exception","gradle","java","json","logging","maven","splunk","throwable","utility"],"created_at":"2024-11-21T01:22:32.464Z","updated_at":"2025-12-31T00:22:46.352Z","avatar_url":"https://github.com/TurquoiseSpace.png","language":"Java","readme":"\n\n# Throwable Utility\n\n![Visit Count](https://profile-counter.glitch.me/TurquoiseSpace_throwable-utility/count.svg)\n\n\nJava's Throwable JSON Transformer Module\n\n[![Maven Central](https://img.shields.io/maven-central/v/com.github.TurquoiseSpace/throwable-utility.svg?label=Maven%20Central)](https://repo1.maven.org/maven2/com/github/TurquoiseSpace/throwable-utility/)\n\n[![Java Doc](https://javadoc.io/badge2/com.github.TurquoiseSpace/throwable-utility/javadoc.svg)](https://javadoc.io/doc/com.github.TurquoiseSpace/throwable-utility)\n\n[![GitHub (All Releases)](https://img.shields.io/github/downloads/TurquoiseSpace/throwable-utility/total?color=blue)](https://repo1.maven.org/maven2/com/github/TurquoiseSpace/throwable-utility/)\n\n[![GitHub (Latest Release)](https://img.shields.io/github/downloads/TurquoiseSpace/throwable-utility/throwable-utility-0.0.9/total)](https://repo1.maven.org/maven2/com/github/TurquoiseSpace/throwable-utility/0.0.9/)\n\n\n[Maven Central Sonatype Search](https://central.sonatype.com/artifact/com.github.TurquoiseSpace/throwable-utility)\n\n[MVN Repository](https://mvnrepository.com/artifact/com.github.TurquoiseSpace/throwable-utility)\n\n[Nexus Repository Manager](https://oss.sonatype.org/#nexus-search;quick~throwable-utility)\n\n\n\n## Include as Dependency\n\n\n- Maven\n\n```\n\u003cdependency\u003e\n    \u003cgroupId\u003ecom.github.TurquoiseSpace\u003c/groupId\u003e\n    \u003cartifactId\u003ethrowable-utility\u003c/artifactId\u003e\n    \u003cversion\u003e0.0.9\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n- Gradle\n\n```\nimplementation group: 'com.github.TurquoiseSpace', name: 'throwable-utility', version: '0.0.9'\n```\n\n- Gradle (Short)\n\n```\nimplementation 'com.github.TurquoiseSpace:throwable-utility:0.0.9'\n```\n\n- Gradle (Kotlin)\n\n```\nimplementation(\"com.github.TurquoiseSpace:throwable-utility:0.0.9\")\n```\n\n\n\n## Code Usage\n\n\n- Import the class\n\n```\nimport com.TurquoiseSpace.utility.ExceptionLogUtil;\n```\n\n- Call one of the static methods\n\n```\nExceptionLogUtil.logException(exception);\n```\n\n```\nString exceptionJson = ExceptionLogUtil.getExceptionJson(exception);\n```\n\n\n\n## Description\n\n\nThe main Utility class `ExceptionLogUtil.java` actually logs the Exception in JSON format, for better readibilty, or gives the Throwable JSON.\n\nThe other Utility class `JsonUtil.java` is meant for mapping any Object to JSON, or vice versa.\n\nCan be easily viewed in AWS Cloud Watch or DataDog or Splunk.\n\nEasy to search, by providing whole paragraph of Exception log in one single line.\n\n\n\n## KeyWords for searching in Application Logs\n\n\n```\nEncountered Throwable\n```\n\n```\nParsed Throwable\n```\n\n```\nexceptionTraceHeirarchy\n```\n\n```\nexceptionMeta\n```\n\n\n\n## Structure of the Repository\n\n\nThe actual code is located inside\n\n\t./src/main/java/\n\nwith the base package as\n\n\tcom.TurquoiseSpace\n\nand child packages (shows the call heirarchy from top to bottom)\nand in java files\n\n\tutility\n\t\tExceptionLogUtil.java\n\t\tThrowableLogUtil.java\n\t\tJsonUtil.java\n\tconstant\n\t\tExceptionConstants.java\n\t\tErrorConstants.java\n\t\tThrowableConstants.java\n\tmodel\n\t\tGenericException.java\n\t\tExceptionMeta.java\n\t\tExceptionPoint.java\n\n\n\n## GPG Keys\n\n\n- Check existing GPG Keys\n\n```\ngpg --list-secret-keys --keyid-format LONG\n```\n\n- Generate GPG Key\n\n```\ngpg --gen-key\n```\n\n- Receive GPG Key from Servers\n\n```\ngpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 876A6DD3FB3573F1\ngpg --keyserver hkp://keys.openpgp.org --recv-keys 876A6DD3FB3573F1\ngpg --keyserver hkp://pgp.mit.edu --recv-keys 876A6DD3FB3573F1\n```\n\n- Send GPG Key to Servers\n\n```\ngpg --keyserver hkp://keyserver.ubuntu.com --send-keys 876A6DD3FB3573F1\ngpg --keyserver hkp://keys.openpgp.org --send-keys 876A6DD3FB3573F1\ngpg --keyserver hkp://pgp.mit.edu --send-keys 876A6DD3FB3573F1\n```\n\n\n\n## Build\n\n\n- Normal Sanity\n\n```\nmvn -Dmaven.artifact.threads=25 clean eclipse:eclipse -DdownloadSources=true dependency:go-offline dependency:resolve-plugins install -e\n```\n\n- With OSSRH Sonatype\n\n```\nmvn -Dmaven.artifact.threads=25 clean eclipse:eclipse -DdownloadSources=true dependency:go-offline install --settings /home/mafia/.m2/setting.xml --global-settings /space/tools/apache-maven-3.6.3/conf/settings.xml\n```\n\n\n\n## Publish Artifact\n\n```\nmvn deploy --settings /home/mafia/.m2/setting.xml --global-settings /space/tools/apache-maven-3.6.3/conf/settings.xml\n```\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fturquoisespace%2Fthrowable-utility","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fturquoisespace%2Fthrowable-utility","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fturquoisespace%2Fthrowable-utility/lists"}