All Projects → maricn → Logback Slack Appender

maricn / Logback Slack Appender

Licence: other
Logback appender for Slack messenger

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Logback Slack Appender

Quicklogger
Library for logging on files, console, memory, email, rest, eventlog, syslog, slack, telegram, redis, logstash, elasticsearch, influxdb, graylog, Sentry, Twilio, ide debug messages and throw events for Delphi/Firemonkey/freepascal/.NET (Windows/Linux/OSX/IOS/Android).
Stars: ✭ 137 (+87.67%)
Mutual labels:  slack, logging
Clog
Package clog is a channel-based logging package for Go
Stars: ✭ 151 (+106.85%)
Mutual labels:  slack, logging
Yii2 Slack Log
Pretty Slack log target for Yii 2
Stars: ✭ 24 (-67.12%)
Mutual labels:  slack, logging
Jonsnow
App Store/Google Play review watcher, deliver new reviews to slack channel
Stars: ✭ 65 (-10.96%)
Mutual labels:  slack
Spring Higher Order Components
⚡️ Preconfigured components to speedup Spring Boot development
Stars: ✭ 65 (-10.96%)
Mutual labels:  logging
Jbot
Make Slack and Facebook Bots in Java.
Stars: ✭ 1,148 (+1472.6%)
Mutual labels:  slack
Serverless Slackbot
A boilerplate Serverless Slackbot framework with a custom scripts folder (like Hubot)
Stars: ✭ 72 (-1.37%)
Mutual labels:  slack
Class Logger
Boilerplate-free decorator-based class logging
Stars: ✭ 64 (-12.33%)
Mutual labels:  logging
Sejil
Capture, view and filter your ASP.net core log events right from your app
Stars: ✭ 70 (-4.11%)
Mutual labels:  logging
Ring Logger
Log ring requests & responses using your favorite logging backend
Stars: ✭ 66 (-9.59%)
Mutual labels:  logging
Busy Beaver
The Chicago Python Community Engagement Slack bot
Stars: ✭ 66 (-9.59%)
Mutual labels:  slack
Skellington
✨💀✨ The skeleton for your bots
Stars: ✭ 65 (-10.96%)
Mutual labels:  slack
Ex mustang
✨ A simple, clueless bot
Stars: ✭ 67 (-8.22%)
Mutual labels:  slack
Slacko
A neat interface for Slack
Stars: ✭ 64 (-12.33%)
Mutual labels:  slack
Logbert
Logbert is an advanced log message viewer for log4net, log4j and others.
Stars: ✭ 70 (-4.11%)
Mutual labels:  logging
Cookiecutter Pyramid Talk Python Starter
An opinionated Cookiecutter template for creating Pyramid web applications starting way further down the development chain. This cookiecutter template will create a new Pyramid web application with email, sqlalchemy, rollbar, and way more integrated.
Stars: ✭ 64 (-12.33%)
Mutual labels:  logging
Android Filelogger
A general-purpose logging library with built-in support to save logs to file efficiently.
Stars: ✭ 70 (-4.11%)
Mutual labels:  logging
Litter
Litter is a pretty printer library for Go data structures to aid in debugging and testing.
Stars: ✭ 1,137 (+1457.53%)
Mutual labels:  logging
Logging Log4j2
Apache Log4j 2 is an upgrade to Log4j that provides significant improvements over its predecessor, Log4j 1.x, and provides many of the improvements available in Logback while fixing some inherent problems in Logback's architecture.
Stars: ✭ 1,133 (+1452.05%)
Mutual labels:  logging
Hubcommander
A Slack bot for GitHub organization management -- and other things too
Stars: ✭ 1,149 (+1473.97%)
Mutual labels:  slack

Logback Slack appender

UNMANTAINED

I don't have time to take care and maintain this project. I don't use logback on any of my projects anymore. If anyone wants to have their fork linked from here, or to take over this repo, drop an issue. Thanks for your support so far!

This is a simple Logback appender which pushes logs to Slack channel.

How to setup

Add dependency to com.github.maricn:logback-slack-appender:1.4.0 in your pom.xml.

Add SlackAppender configuration to logback.xml file

	<?xml version="1.0" encoding="UTF-8" ?>
	<configuration>
		...
		<appender name="SLACK" class="com.github.maricn.logback.SlackAppender">
			<!-- Slack API token -->
			<token>1111111111-1111111-11111111-111111111</token>
			<!-- Slack incoming webhook uri. Uncomment the lines below to use incoming webhook uri instead of API token. -->
			<!--
			<webhookUri>https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX</webhookUri>
			-->
			<!-- Channel that you want to post - default is #general -->
			<channel>#api-test</channel>
			<!-- Formatting (you can use Slack formatting - URL links, code formatting, etc.) -->
			<layout class="ch.qos.logback.classic.PatternLayout">
				<pattern>%-4relative [%thread] %-5level %class - %msg%n</pattern>
			</layout>
			<!-- Username of the messages sender -->
			<username>${HOSTNAME}</username>
			<!-- Emoji to be used for messages -->
			<iconEmoji>😜</iconEmoji>
			<!-- If color coding of log levels should be used -->
			<colorCoding>true</colorCoding>
		</appender>

		<!-- Currently recommended way of using Slack appender -->
		<appender name="ASYNC_SLACK" class="ch.qos.logback.classic.AsyncAppender">
			<appender-ref ref="SLACK" />
			<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
				<level>ERROR</level>
			</filter>
		</appender>

		<root>
			<level value="ALL" />
			<appender-ref ref="ASYNC_SLACK" />
		</root>

	</configuration>

Example of SlackAppender configuration to logback.groovy file (filtering by marker):

import com.github.maricn.logback.SlackAppender
import ch.qos.logback.core.filter.EvaluatorFilter
import ch.qos.logback.classic.AsyncAppender
import ch.qos.logback.classic.boolex.OnMarkerEvaluator

appender('SLACK', SlackAppender) {
  channel = "#api-test"
  username = "${HOSTNAME}"
  colorCoding = "true"
  webhookUri = "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"
  layout(PatternLayout) {
    pattern = "%-4relative [%thread] %-5level %class - %msg%n"
  }
  filter(EvaluatorFilter) {
    evaluator(OnMarkerEvaluator) {
      marker = "SLACK_MARKER"
    }
    onMismatch = DENY
    onMatch = NEUTRAL
  }
}

appender('ASYNC_SLACK', AsyncAppender) {
  appenderRef("SLACK")
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].