How do I get logging working for script runner in a script listener

JIRA 2.0.7

ScriptRunner 4.2.0.7

Hi,

I'm adding a script listener to conditionally set an issue's state based on the value of a custom field. If I leave the condition blank (true) in the script listener, the listener works as expected. However when I insert my code, it's failing. I can't seem to get any logging information.

Could I get some help enabling logging for the Script Runner listener scripts? I'm sure I can figure out why this is returning 'false' once I have more information.

Thanks,

JB>

Code in the 'Condition' field of teh script listener (Type: Fast-track transition an issue)

import com.atlassian.jira.component.ComponentAccessor

def customFieldManager = ComponentAccessor.getCustomFieldManager()
def language = issue.getCustomFieldValue(customFieldManager.getCustomFieldObject("customfield_11505"))

log.info("Language:" + language)
return language == 'English'

3 answers

This widget could not be displayed.

Hi John,

here you should find everything:

https://jirasupport.wordpress.com/2015/05/27/configure-groovy-scriptrunner-logs/

 

Basically you need:

log.error "Debug message"

log.debug

This widget could not be displayed.

Thanks for the response.

 

This doesn't work for me. I get no entry in either the atlassian-jira.log or in the 'logs' entry for the listener on the last 15 executed listeners popup.

However, when I added my own custom logger, I got logging in the listener popup but still nothing in the atlassian-jira.log.

I've done some more digging and this works as expected:

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.customfields.option.LazyLoadedOption

import org.apache.log4j.Level
import org.apache.log4j.Logger

def myLog = Logger.getLogger("com.onresolve.jira.groovy")
myLog.setLevel(Level.DEBUG)

def customFieldManager = ComponentAccessor.getCustomFieldManager()
def language = issue.getCustomFieldValue(customFieldManager.getCustomFieldObject("customfield_11505"))
def value = ((LazyLoadedOption)language).getValue()
myLog.debug("Test for equality: " + (value == 'English'))
return value == 'English'

I'd prefer not to have to use a custom logger. I'm wondering why your suggestion doesn't work for us.

I do have the the package 'com.onresolve.jira.groovy set up in Logging and Profiling as DEBUG.

Thanks,

JB>

Something like that happened me a few days ago and I discovered I set the default log to the wrong value.

image2016-4-13 23:9:56.png

Go to the admin section, find 'logging and profiling' on the left hand side and click into it. scroll down to where the logging is listed and set the 'default' one to DEBUG. When I set this back to debug, I could then see all my log.debug entries from my scripts in the last 15 executed scripts section..

 

Worked for me anyway. I think I mistakenly changed the level of this log in one of my scripts when experimenting...

This widget could not be displayed.

If you want to turn on debug logging you can configure your log4j properties for this in a dev environment: https://scriptrunner.adaptavist.com/latest/common/DevEnvironment.html#_a_use_an_existing_instance

If you want a simple way of enabling debug logging temporarily you can use the code here: https://scriptrunner.adaptavist.com/latest/jira/getting-help.html#_support_requests

Otherwise its easiest to use a higher logging level:

log.warn("Logging!")

A simple test is to do logging from the script console and see if you get the message in the logs as expected.

I tried exactly this, logging from the Script Console in Confluence, but the Logs Tab is always empty:

import groovy.json.JsonBuilder
import org.apache.log4j.Category

import static com.atlassian.sal.api.net.Request.MethodType.POST

def Category log = Category.getInstance("com.onresolve.jira.groovy")
log.setLevel(org.apache.log4j.Level.DEBUG)
log.debug "debug statements"
log.warn("Logging!")
log.error("Logging!")
log.fatal("Logging!")

any idea on that?

I'm having the same issue where in Scripted Fields and the Script console logs work fine, but in the Custom Listener Preview log statements don't output anything under the Logs tab.

@Carsten Hilber did you figure it out on your end?

@Ron L nope, i skipped trying without a solution....

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Aug 22, 2018 in Marketplace Apps

How a Marketplace app tech team is achieving gender diversity

Hello! My name is Genevieve Blanch, and I'm the Marketing Manager at RefinedWiki, creators of apps to give teams the tools to customize Atlassian platforms. Currently, 44% of the tech team at Re...

425 views 3 17
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you