# Options to do remote-debugging of custom modules?

**URL:** <https://forum.inductiveautomation.com/t/options-to-do-remote-debugging-of-custom-modules/85544>\
**Category:** Ignition\
**Created:** [February 12, 2024, 8:48am UTC](https://forum.inductiveautomation.com/t/options-to-do-remote-debugging-of-custom-modules/85544 "2024-02-12T08:48:02Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![christofer.dutz](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/christofer.dutz/32/76634_2.png) [@christofer.dutz](https://forum.inductiveautomation.com/u/christofer.dutz)\
**Post date:** [February 12, 2024, 8:48am UTC](https://forum.inductiveautomation.com/t/options-to-do-remote-debugging-of-custom-modules/85544/1 "2024-02-12T08:48:02Z")

</div>

Hi all,

I am currently starting to implement the functionality of my first ignition module. Now I thought, as Ignition is Java based, I could probably initialize a remote debugging session to see how my module is operating in ignition. Unfortunately the startup process is not as straight-forward as starting a normal java program. So far I haven't been able to find how to make the JVM listen for incoming debugging sessions.

It would be great, if anyone here could give me a pointer to how to do this.

Chris

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [February 12, 2024, 3:31pm UTC](https://forum.inductiveautomation.com/t/options-to-do-remote-debugging-of-custom-modules/85544/2 "2024-02-12T15:31:20Z")

</div>

The `$IGNITION/data/ignition.conf` file already comes with the lines you just need to uncomment before restarting the Ignition Gateway:

```auto
#wrapper.java.additional.6=-Xdebug
#wrapper.java.additional.7=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=*:8000

```

---

<div class="post-metadata">

**Author:** ![YF129701](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/yf129701/32/60498_2.png) [@YF129701](https://forum.inductiveautomation.com/u/YF129701)\
**Post date:** [February 12, 2024, 3:48pm UTC](https://forum.inductiveautomation.com/t/options-to-do-remote-debugging-of-custom-modules/85544/3 "2024-02-12T15:48:45Z")

</div>

I had to do this just last week - it's incredibly easy to set up and very, very useful.

[Here](https://docs.inductiveautomation.com/display/SE/Debugging+in+IntelliJ) is the guide I followed to set up a remote debugging profile for IntelliJ. Also, just know that its normal for your gateway to time out if you're debugging longer than like 30 seconds.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [February 12, 2024, 4:36pm UTC](https://forum.inductiveautomation.com/t/options-to-do-remote-debugging-of-custom-modules/85544/4 "2024-02-12T16:36:48Z")

</div>

> [@YF129701](#):
>
> Also, just know that its normal for your gateway to time out if you're debugging longer than like 30 seconds.

You can set an additional ignition.conf property to prevent that:  
[https://wrapper.tanukisoftware.com/doc/english/prop-java-detect-debug-jvm.html](https://wrapper.tanukisoftware.com/doc/english/prop-java-detect-debug-jvm.html)

---

<div class="post-metadata">

**Author:** ![christofer.dutz](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/christofer.dutz/32/76634_2.png) [@christofer.dutz](https://forum.inductiveautomation.com/u/christofer.dutz)\
**Post date:** [February 13, 2024, 10:48am UTC](https://forum.inductiveautomation.com/t/options-to-do-remote-debugging-of-custom-modules/85544/5 "2024-02-13T10:48:44Z")

</div>

Hi all,

thanks for the pointers ... yeah ... my "fix" seems a bit more complicated, as I renamed the java executable and added a shell script to patch in the arguments ... this solution is so much nicer 😉

Chris
