The Anypoint Platform developed by MuleSoft and acquired by Salesforce in early 2018 is designed to
connect apps, data, and devices anywhere, on-premises or in the cloud. This platform was built to
offer out-of-the-box connectors as well as tools that architects and developers can adopt quickly to
design, build and manage the entire lifecycle of their APIs, applications, and products.
Perfect for projects where Elasticsearch makes sense: if you decide to employ ES in a project, then you will almost inevitably use LogStash, and you should anyways. Such projects would include: 1. Data Science (reading, recording or measure web-based Analytics, Metrics) 2. Web Scraping (which was one of our earlier projects involving LogStash) 3. Syslog-ng Management: While I did point out that it can be a bit of an electric boo-ga-loo in finding an errant configuration item, it is still worth it to implement Syslog-ng management via LogStash: being able to fine-tune your log messages and then pipe them to other sources, depending on the data being read in, is incredibly powerful, and I would say is exemplar of what modern Computer Science looks like: Less Specialization in mathematics, and more specialization in storing and recording data (i.e. Less Engineering, and more Design).
MuleSoft Anypoint Platform is best tool in the market for developing APIs with complex structures communicating with various different types of applications including web applications as well as legacy applications. Also applications including database connectivity for fetching and updating data in the DB tables. I cant think of any scenario which MuleSoft Anypoint Platform could not be used for developing the integrations.
Logstash design is definitely perfect for the use case of ELK. Logstash has "drivers" using which it can inject from virtually any source. This takes the headache from source to implement those "drivers" to store data to ES.
Logstash is fast, very fast. As per my observance, you don't need more than 1 or 2 servers for even big size projects.
Data in different shape, size, and formats? No worries, Logstash can handle it. It lets you write simple rules to programmatically take decisions real-time on data.
You can change your data on the fly! This is the CORE power of Logstash. The concept is similar to Kafka streams, the difference being the source and destination are application and ES respectively.
Since it's a Java product, JVM tuning must be done for handling high-load.
The persistent queue feature is nice, but I feel like most companies would want to use Kafka as a general storage location for persistent messages for all consumers to use. Using some pipeline of "Kafka input -> filter plugins -> Kafka output" seems like a good solution for data enrichment without needing to maintain a custom Kafka consumer to accomplish a similar feature.
I would like to see more documentation around creating a distributed Logstash cluster because I imagine for high ingestion use cases, that would be necessary.
Has more features than what we really need so we're paying for more than we use. Sort of like paying for an Abrams tank when all we really need is a Toyota Corolla.
Not a value product, tends to be expensive.
Takes a while for developers to learn to use Mulesoft Anypoint.
Anypoint Platform support is very responsive. There is also a huge knowledge base and an active online forum where answers to most questions can be found. When needed support engages the engineering group so adequate solutions or workarounds are always provided.
MongoDB and Azure SQL Database are just that: Databases, and they allow you to pipe data into a database, which means that alot of the log filtering becomes a simple exercise of querying information from a DBMS. However, LogStash was chosen for it's ease of integration into our choice of using ELK Elasticsearch is an obvious inclusion: Using Logstash with it's native DevOps stack its really rational
Once we have moved all of our system integration APIs to the MuleSoft Anypoint Platform, we will need to communicate with a wide variety of external systems. All of our business and service logic is stored in the aforementioned core systems. Anypoint Platform (and all of our APIs) makes it easy to connect to various other platforms. In order to link to these many other systems, connectors and/or components are utilized, and they are simple to configure and integrate.
Positive: Learning curve was relatively easy for our team. We were up and running within a sprint.
Positive: Managing Logstash has generally been easy. We configure it, and usually, don't have to worry about misbehavior.
Negative: Updating/Rehydrating Logstash servers have been little challenging. We sometimes even loose data while Logstash is down. It requires more in-depth research and experiments to figure the fine-grained details.
Negative: This is now one more application/skill/server to manage. Like any other servers, it requires proper grooming or else you will get in trouble. This is also a single point of failure which can have the ability to make other servers useless if it is not running.