What is our primary use case?
We have various tools, applications, and websites and the use case for Apica is emulating user actions on those sites and in the tools. We use it for proactive action. Before the user starts getting errors, Apica will alert us because we have it monitoring the same actions we expect the users will be taking. Once Apica detects an error it will notify us so we can take necessary action, before it becomes widespread and users start to report it. Apica is doing an important job in monitoring because our company offers services through those sites and the application.
We're using it on-premises and we're using their agents on their cloud.
How has it helped my organization?
Because we're using this product to monitor, for example, the sign-up flow, meaning Apica is doing the same actions as a user who would like to sign up, we have been able to figure out when there's a failure in that flow, before it starts to impact users and prevent them from signing up through the services. This is something that has a very high revenue-impact on our company. Apica has helped us find issues with the sign-up before users have started to call customer care regarding the services.
The fact that the solution offers multiple deployment options — on-premise, hybrid, managed cloud solution, bring-your-own-cloud — helps our organization meet our security requirements. Some of the tools in our company can only be accessed internally. To have an internal, on-premise agent makes it easier to test these corporate tools. We have these tools also monitored with the on-premise installation. It helps us to monitor both customer tools, services, and applications, and the corporate tools and applications.
We use the solution’s ability to make use of our own scripts in Selenium and Postman. We're using Selenium to write scripts that can be run for the browser checks, and we're using Postman to run the ZebraTester scripts. Using the scripting feature saves us on resources. It is one of the things that makes the product easy to use. We don't need a specific type of engineer or operator to be able to write these scripts. There are many people who can do the scripting.
In terms of the alerting, since we started using Selenium, which is for the browser checks feature, about 95 percent of the alerts have been real issues. This level of alerting accuracy has saved us time. It helps us to identify root cause quicker. We used to spend something like an hour just to find the root cause, but the ability to have sensitive monitoring reduces it by half. We can identify root cause within 15 to 30 minutes.
Apica has saved us management costs as well. I'm not involved on the financial side, so I can't put a number to it, but I know that we resolve priority-one incidents faster.
What is most valuable?
We mainly use the ZebraTester and the browser checks. These are the most important scripts that we're using on Apica.
With the ZebraTester, the ability to have and store dynamic variables, when setting up the monitors, means you can extract that value and use it in a subsequent service call. This is something that has made our lives easier. The most complex monitoring processes are for security purposes: You need to have a fresh token for the user when, for example, he tries to log in. That token keeps changing. To be able to get the results of other service calls that are depending on the login, you need to use that token in the subsequent service calls. Being able to extract that token, store it in a variable, and use it in the other service calls is one of the most complex things. This is one of the features that I like the most because it helps us in configuring these services, in a certain flow, without the need to re-record the whole thing. Being able to extract that value from the service calls is something that has made monitoring a lot easier.
For the browser checks, the screenshots that are available help the engineer or the operator who is on the shift figure out what's wrong or what step is failing.
Also, the flexibility of the solution in terms of the range of protocols it can monitor has been great. The product has been working as expected and it has helped us to cover something like 95 percent of the outages or issues that we have had.
What needs improvement?
There is room for improvement with the GUI. It's not a big deal, but it would be great to fix the way the GUI is loading. Sometimes when we want the manager alerts and manager checks, it takes time to load all the way. With the whole GUI, if the information appeared quicker, loaded faster than it does now, it would be great.
Also, when it comes to the way the internal agent is installed, because you can install an application on a server, I would love to see the application Docker-ized. If you could install internal agents using Docker or using containers, it would be easier for us to manage them and spin up internal agents. Most of the applications we have now tend to be Docker-ized applications. I'd love to see Apica going that way with its internal agents.
For how long have I used the solution?
I have been using Apica Synthetic for about five years.
What do I think about the stability of the solution?
It's stable. Sometimes there's an outage, but it's not frequent.
What do I think about the scalability of the solution?
They offer scalability.
We have about 25 users of Apica Synthetic, people who log in to the tool. About 14 out of the 25 users are engineers with the NOC team and the rest are senior management and engineering leads. We're using the dashboards for management to see the SLAs and the availability of the different websites.
At this point it's being used very extensively. We may increase the number of users in the future, as we have some new projects coming out.
How are customer service and technical support?
Technical support is always there to answer my questions. They are very responsive. Typically, they all have the ability to support the product, whether it's updates, or issues that we have regarding scripting, or setting it up.
They're just 100 percent available. They always help us on any issues that we have.
Which solution did I use previously and why did I switch?
We were using Keynote before. I was not involved in the reasons for the switch.
How was the initial setup?
The initial setup was pretty straightforward. There aren't too many requirements in setting up Synthetic. The guides they provided are easy to read and easy to follow.
Apica support was also always available so we could just shoot a question to them and they would answer right away. During my shift, when I reached out to them via email or a form, they would be able to jump up on a Zoom or a Slack call, to help us right away. They were very helpful. We switched to Apica from a different product and they definitely helped us with recording the scripts that we already had, and with introducing newer ones. They helped reduce the time that we would have had to spend going over the admin guides. Initially, we just wanted to record our existing scripts and they offered to record them. Their support took care of converting the scripts from the language that we used in our old tools to Apica. That saved us time.
They anticipated our needs during the deployment. They had pretty much everything that we needed when we initially set it up. And when we had a feature request or some kind of additional setup, they tried to provide that feature or help us with a workaround to meet our requirements, even if the product at that point did not have those things directly.
Our deployment, overall, took two to three months.
We had a deployment plan. There was a project manager, and I was involved in writing the scripts and trying to figure out how to convert from the old solution to Apica. Afterwards, I just took care of just recording the new scripts, but there was a whole project for changing to Apica. For deployment and maintenance there were two people involved from our team.
Which other solutions did I evaluate?
I have not tried all the synthetic monitoring tools out there, but I have tried two of them. They had the same ability to assign the dynamic variables, which is the most complicated stuff that we're implementing, the dynamic variables from one service call to another. But I found Apica offers the easiest way to set this up. This is something that made us stick with Apica, because it's easier to set up the scripts, even with the most complex feature. The two other products I tried have that ability, but it was so complex to set it up. That's what makes Apica better than the others.
What other advice do I have?
Every time I face an issue and reach out to the support, they point me to a part of the documentation. So read the administration guide or the documentation, because they have everything that you need in their Knowledge Base. This is something I learned from opening multiple tickets. It's there in the documents. It now saves me time when I read the documentation.
Apica Synthetic is one of the most important monitoring tools that we're using.
I would rate it at 10 out of 10 because it's accurate. I've dealt with so many tools and applications, but their support is the most responsive support I've seen. The tool itself offers so many integrations with other applications. It's easy to set up, easy to configure. The documentation is great. The most important part is that the tool covered most of the issues we have and was able to help reduce the time that we needed to resolve the issues and the outages that we had.