filedaemon

My Experience With FireDaemon Pro

by on March 4, 2013 11:06 am

Introduction

There’s a nifty piece of software I’ve run across called FireDaemon Pro – I’d love to share my experiences, as it’s a great tool to have in your tool pouch.

The basics of the software are simple: take just about any Windows application or script and turn it into a Service. To name a few, FireDaemon Pro handles 32- and 64-bit EXE and DLL applications, BAT, CMD, Perl and Java. Before I rattle off more of the bells and whistles, let me give you some context on what we were doing at the time, and how we ended up using this product.

The Situation

A teammate and I were working in a small IT shop that provided services for a federally regulated industry. We were part of a team of four that supported and implemented solutions for day-to-day operations. Each of our roles were siloed by the business teams we supported. My teammate had been there longer than I and had developed quite a few .NET applications of various flavors, while my predecessors had come from more of an “anything but Microsoft” philosophy. I had just come off of my first .NET project and was anxious to continue to explore the world of .NET . At some point, we decided for any new development, we would implement solutions in .NET for ease of cross-training, skill portability for projects spanning our business teams, and subsequent ease of support for each of our respective roles.

Fast-forward several months and my teammate had implemented a prototype serial port application that received time-sensitive federally regulated data, and saves the data to a database for another process to pick up and push into a customer-facing system. Serial port implementation in a .NET application is fairly easy to accomplish, but had its challenges in a service-oriented implementation. With time and resource constraints, not to mention “money savings to be had” pressure, my teammate had created a forms application to get the proof-of-concept up and going. Unfortunately/fortunately our internal customers were so pleased with the process, they pushed for it to be implemented into production as-is. At the time it didn’t seem to be a big deal. We’ll run it as a forms application on the production server with the appropriate security. After all, there are only so many IT resources and projects were stacked high and tight, so better to implement as-is and move on…right?

Let’s just say many 3 AM phone calls later, it was starting to be a bit on the painful side.

While the above project was in-flight and a few months ahead, I was off and running on a new development project where I wanted to leverage the Microsoft Office PIA’s in a .NET application to process Excel files generated by third-party software (I know, I know … Apache POI … believe me, I know. .NET was just so shiny at the time). My teammate had not yet been bit by the “put it in production as-is” direction, so when I started to create my application, I followed suit and also developed a Forms application to do my testing with.

Long story short, I ended up finding out the hard way that Microsoft does not support a service implementation using their PIA’s. So, I was faced with implementing a Forms application in production.

It was about that time that one of our server guys (who had been involved with the various issues brought to light by running a Forms application on a production server  - i.e. not being able to do a server bounce without manually starting an application) introduced us to FireDaemon Pro. It was the cure for what ailed us. With a small change to the forms application and about 15 minutes worth of install and configuration time on the server, Forms application turned service worked flawlessly.

No more manual starts, no more 3 AM calls.

Fire Daemon Overview

Something great about FireDaemon Pro is that it has all sorts of configuration choices: automatic re-start, email upon failure or re-start, and automatic pop-up handling, to name a few.

Here’s a more complete feature list, from the FireDaemon Pro website:

  • Monitor and restart your app if it crashes, hangs or shuts down
  • Schedule your app to start/restart at specific times and dates – before you log in
  • Ability to start and run your application in the background without user intervention.
  • Ability to run your application continually across multiple user sessions.
  • Run your application either interactively or non-interactively.
  • Restarts your application in the event of failure, unintentional or malicious shutdown or at scheduled predetermined intervals.
  • Ability to modify your application’s priority and bind to specific processors or cores.
  • Execute additional transient programs during the service lifecycle.
  • Control, log and close popups that your application might display.
  • Assists in meeting various government regulations, Acts and standards pertaining to computing systems robustness, security, management, access and control (eg. Sarbanes-Oxley (SOX), ITIL).

Aside from having to find this product in the situation we did, I’m glad to have had the experience. This is an excellent tool to have in your tool pouch, so make sure to check it out more in detail here. For more how-tos, check out its features page.

– Keith LaPee, asktheteam@keyholesoftware.com

  • Share:

Leave a Reply

Things Twitter is Talking About
  • Check out our newest blog: #JAXB – A Newcomer’s Perspective, Part 1 http://t.co/Ki9G04HV5e
    July 22, 2014 at 1:22 PM
  • New post on the Keyhole blog by Mark Adelsberger: #JAXB – A Newcomer’s Perspective, Part 1 http://t.co/Ki9G04HV5e
    July 21, 2014 at 2:27 PM
  • If you're a Java dev, you're likely familiar with Annotations. But have you created your own #Java Annotations? Ex - http://t.co/BgCsYjxZKF
    July 18, 2014 at 12:10 PM
  • RT @gamasutra: Don't Miss: Unconventional Tips for Improving your Programming Skills http://t.co/6TFox7CKHU
    July 16, 2014 at 3:20 PM
  • We're about to send out our free monthly tech newsletter. Dev tips/articles via email. Not on the list yet? Sign up - http://t.co/F8h0NSiicZ
    July 15, 2014 at 11:57 AM
  • Have you ever tried creating your own #Java annotations? See a situation where it was beneficial - http://t.co/BgCsYjxZKF
    July 15, 2014 at 8:36 AM
  • There's a new post on the Keyhole blog by @jhackett01: Creating Your Own #Java Annotations - http://t.co/BgCsYjxZKF
    July 14, 2014 at 1:43 PM
  • We love development! Have you seen our weekly team blog? We show how to be successful with the tech we use. See it - http://t.co/nlRtb1XNQH
    July 12, 2014 at 2:35 PM
  • Rapid appdev has a bad rep, but there are ways to bring development time down the right way. Don't Fear the Rapid - http://t.co/aTPcAKOj0r
    July 11, 2014 at 3:10 PM
  • Automated Testing is great for dev, but does bring a set of challenges (especially for #agile teams). Success tips: http://t.co/1acl1ngO7i
    July 11, 2014 at 12:16 PM
  • This is fantastic - One small step for Google, one giant leap for empowering girls to code: http://t.co/R90V5DBkv1
    July 10, 2014 at 2:52 PM
  • #RabbitMQ: messaging software built on AMQP protocol. Learn relevant concepts & how to avoid common "gotchas" here: http://t.co/ZwMXlhKyX8
    July 10, 2014 at 9:31 AM
  • A huge welcome to Brian Wetzel who joins the Keyhole team today!
    July 10, 2014 at 8:50 AM
  • Seen our newest blog? @joshuarob01 talks the challenges #Agile teams face in automated testing & how to solve them: http://t.co/1acl1ngO7i
    July 9, 2014 at 3:51 PM
  • How can we ensure that we write unit tests with sufficient coverage? Here are some tips for success in #unittesting - http://t.co/GGTEGEQFtk
    July 9, 2014 at 3:05 PM
  • Are you a .NET dev who likes working with #JavaScript, #Angular & a solid team? Join Keyhole: http://t.co/kWgVdxgvpG http://t.co/VLoeULthOE
    July 9, 2014 at 8:48 AM
  • Counting down until the Keyhole Team Happy Hour this evening @ the District. Pour House + Kitchen... one more hour!
    July 8, 2014 at 4:15 PM
  • Code For Maintainability So The Next Developer Doesn't Hate You - http://t.co/FWTMF7Pixd 8 helpful tips to do so.
    July 8, 2014 at 2:05 PM
  • So glad you enjoyed it! @AssertAgile: "Nice article, sounds familiar to me: Lessons Learned in Automated Testing - http://t.co/1acl1ngO7i"
    July 8, 2014 at 1:54 PM
  • Good tutorial: creating a TV show tracker with #AngularJS, Bootstrap, Node, MongoDB, Passport & gulp.js - http://t.co/meXZDazxFr
    July 8, 2014 at 12:07 PM
Keyhole Software
8900 State Line Road, Suite 455
Leawood, KS 66206
ph: 877-521-7769
© 2014 Keyhole Software, LLC. All rights reserved.