Most of our use cases are for automating our SQL jobs to run and send an email.
It used to be really hard for us to set up SQL jobs to email, once they were done. Or, if there was a problem, we couldn't get it to do anything smart and intuitive because that's not the way SQL works. Once JAMS came along, we could set our SQL jobs to run at 1 PM every day. When a job runs, if it can't get its data or it takes too long — or whatever criteria we set up for it — it will email us and let us know that the job needs attention.
That really has helped. When I first started here 15 years ago, I ended up having to babysit SQL jobs all day long and watching for code that wasn't written correctly, or for a lock on something that stopped the job, or somebody didn't put timeouts on it. Once JAMS came along, we set up one set of criteria for quite a few jobs, and for every job we could say, "Here's your database, and run it with these criteria." That freed up our developers' time and my time, and we had a trackable source that would tell us what was wrong. It literally changed all of our lives.
I no longer have to wait for someone to give me all the information about a job that failed, wait for somebody to respond, or question somebody about what they're asking me to fix. It's all right there. The dashboard for JAMS is very intuitive and informative.
It's helped save time—in the extreme—when troubleshooting. Our jobs don't necessarily stall anymore because we've fixed everything that ever stalled. We now know how much of a timeout to put on certain data sources or certain procedures, but we would not have known that as easily without JAMS.
When we first began using JAMS, it freed up about 50 percent of my time, or 20 hours a week. And it saved each developer about 10 hours a week, and maybe more. There have also been some advances made in SQL that have helped. But because we've been using JAMS for so long, the savings are really immeasurable. We've relied on it for so long, and we'll continue to rely on it in the future.
When a job doesn't work, all I have to do is open JAMS and open the job and, 99 percent of the time, it tells me what I need to do, or what happened, or I know where to look. Before, if a job failed and just kept failing, we had no idea where to even start looking. We'd have to go to the logs on SQL Server, which meant everybody had to have admin rights to look at the logs. Now, we have just set up JAMS to run with a service account that has the ability to do that, and then everybody can look at their own jobs and fix them. Sometimes, it's just a matter of needing to rerun a job because something was down in the network.
By setting it up with a service account that has access to everything, we don't have to run it under my name or anyone else's name. We can set it up so that everybody has permission and I don't have to worry about granting someone permission. And I don't have to give them access to the email account where the failure or success email might be sent. Everything is done with the agent or the service account. And when a new data source comes online, we just give it to the service account agent, and that sets it up so that everybody has access.
Another way it has helped is that before a client logs in to see their daily reports, and they're not there because something happened to them, we're saved by the fact that JAMS emails tell us that it's happened. We can go in and fix it before the client logs in and finds out that something failed. Or, if something was down, like FTP, we can let the client know in advance so that if they log in, they will know that the data is not available and that we know already and are working on it. JAMS has made us look smarter to our clients.
For example, when you log in to your computer and do a local Google search for shopping, the results that you get can cost our client a lot of money. It is very hard to get the top result without spending a lot of money because what Google says is that your data integrity matters a lot. If your data is stale, or you haven't done a refresh on your inventory, Google will push you down in the results and move somebody else up. That means that stale data is a big concern for our clients. Some of our clients rely on Google for 90 percent of their business. If we have their data messed up, their business is messed up because of us. We have to know that their jobs are failing and why, and be able to tell the client, early on, that this is happening so that they can do some manual uploading until we fix what's wrong.