Riemann-dash not showing anything - monitoring

I am new to riemann. I am facing an issue which i guess would be trivial but not able to find the solution. I am not getting any data on the riemann dashboard. I have followed the exact steps said in riemann.io/howto.html
My riemann.config file
localhost:4567 page content
Can anyone tell how to get things started.
i even did
sudo netstat -nlp | grep 5555
and got one entry for tcp and one entry for udp. Because of low reputation points cant upload more links for the image.

first put an expression in your config that prints statements and then indexes them:
(streams
...
prn
index
...)
and make sure they are getting indexed.
then add a graph to your dash showing the service "riemann index size" and make sure that this index which exists by default is getting to dash and that it has a non-zero number.
the events really are not getting to dash, then connect with any of the clients and make sure you can run queries. I prefer the python client for this because it has a nice CLI for doing this from the terminal.
always check the box in the upper right of the Riemann dash and make sure it has the correct server name. I have also had to configure riemann to bind to 0.0.0.0:5556 before it would accept queries when it was not running on the same host or when it was running on the same host though in a docker container.
and last of all, consider moving to something other than dash for graphing these things as people often out-grow it quickly anyway.

Related

How to print (to a printer) from Docker

I am using Docker Compose, which will run on a Linux tablet in production. I have a container serving up a web GUI. The user will click a "print" button in the GUI, which will result in some kind of request (probably HTTP to Flask in another container, which will maybe forward it to some other container), and that request will result in some data being sent to the printer.
My first step, I can only imagine, is to be able to send data to the printer from inside a Docker container. Any Docker container. I can then use that knowledge, of how to send something to the printer from Docker, to incorporate the printing into my system.
So, that's the infrastructure I'm working with. It can be simplified as simply "I want to print to a printer from a Docker container." I'm working on a Mac, and I can print from the Mac using lp. So I know the connection to the printer is working.
I've tried a few containers, including olbat/cupsd. lpstat -r pretty much always says the Scheduler is running, but lpstat -v always shows that no destinations are set up.
My DevOps guy and I have been banging our heads against the wall all day on this. There are various articles and repos about setting of CUPS in Docker, but they all have holes somewhere, where they say "Use the fooglesplatter to connect to the printer" without telling you what a fooglesplatter is. Or (for a more concrete example) they'll talk about how you set up the CUPS dashboard to add your printer on your local machine, and then say "Voila! You can print!" without telling you what to do in the container. Or they'll refer to a conf file that doesn't exist on my machine. Or something else that leaves us completely baffled.
Can someone who has accomplished this please post (or direct me to) a step-by-step guide that basically treats me like I've never touched a computer before? That assumes no knowledge whatsoever and spells out every step? We are wise Docker users, and my DevOps guy is a much smarter guy than I am, but we are both at a loss.
I know this is a crazy request. Maybe it's not an SO appropriate question. Close it if you must. But we are incredibly stuck and I really hope someone can help us.

overriding configuration on a running tarantool instance

Can anyone tell me in the course, it is possible to override the parameters of individual box.cfg on a running instance. For example, add a replica, for several days I have been trying to deploy three replicas on three hosts via the docker service stack.
When I raise my hands on each server, everything works, through deploy they do not see each other and fall. I've tried all sorts of ways. hung up the endpoint on the target nodes, when requested, it gives the ip of the machine on which the container rises, if the ip matches one of those indicated in SEED, then substitutes the internal ip of the container instead (otherwise it cannot connect to itself).
In theory, it all works as I described, but there are suspicions that everything is not much different, I suppose that the problem is that before the declaration of box.cfg the instance does not reserve the address. Alas, I can not go inside the container because it cannot rise. I got the idea that if all three nodes are declared at the minimum settings and as soon as they rise to listen to the subnet, as soon as the node finds another, it will write it to replication and override box.cfg. Correct me please who had experience.
Some of the box.cfg parameters are dynamic. For example, the box.cfg{listen=}. You can set this one from the Lua code as you wish. In your case, if the container gets its IP address later, you need to specify only the port in listen. This way, Tarantool will listen on all possible interfaces.
The replication_source is a bit trickier. You can set it dynamically, but your first (initializing) call to box.cfg should be with the replication_source. This is because all instances that are initialized without this parameter will create their own replicaset, and it will make it impossible to join them to another replicaset.
You can read more about Tarantool replication architecture here: https://www.tarantool.io/en/doc/latest/book/replication/repl_architecture/

Using the Webots Connector Device with ROS

I'm currently trying to make the Connector Device work with ROS. My first step was to just take one of the robots of the "connector.wbt" world and place it in a new world and switching the robots controller argument to "ros"as one can see below.
When I run the simulations all ROS services are advertised as expected. In the next step I enable the Connector using its corresponding service, where an integer needs to be specified (presence check Time Step) //presence_sensor/enable service as shown below:
Now the topic is enabled, however no messages are published, while I'm expecting to see messages of type "webots_ros/Int8Stamped", which should give me zeros for the absence of a suitable connector.
Is there any idea if the problems lies on my side? Is the Connector-Ros-Interface working properly for you if you recreate the above example?
You are completely right, there was indeed a problem with the ros-connector interface.
This has been fixed just now here:
https://github.com/omichel/webots/pull/672
This fix will be included in the nightly build of today (R2019b revision 1, available from tomorrow morning) that you can find here:
https://github.com/omichel/webots/releases
Let us know if there are still problems.

AGI in Docker container does not receive DTMF input

I am writing an application using Asterisk-Java. It is designed to run on a server that also runs Asterisk. So far, so good.
My application, that originates calls (using the AMI) and that manages user input (using Asterisk-Java's FastAGI and an embedded AgiServer) works great on both my development server and the production server.
For deployment purposes, I am now asked to create a Docker container that would pack up Asterisk and my application, so that it could be easily deployed to other places without having to go through installations and configurations.
The thing is, my application does not behave the same way in the Docker container: on the development / production servers, using the getData function, I can get a DTMF code; on the Docker container, getData seems to never receive the DTMF data from Asterisk (I can stream a file, but the function eventually times out, which means it did not get anything).
I first though of an unexposed port, but since this communication problem seems to be between the AGI Server and Asterisk, which are both running in the container, I find it hard to believe.
I have no other idea, please suggest.
Check out the dtmfmode Parameter for your SIP-Peer...
If your are using RFC2833 (DTMF via RTP), unexposed media ports could very well be the reason.
You could try to optimize your port settings (could be a lot of ports!).
Or try to use DMTF via SIP-Info as an alternative.
But that wouldnt fix any media problems...

Specify port when using snmptrap

I am trying to specify the port when I am sending a trap via snmptrap.
Just in order to test my SNMP receiver I want to send traps to it, but I do not have access to port 162. How do I send the trap to another port?
As I see it the man-page does not describe this option.
(I do not fully understand what the parts of a snmptrap message is either, so if someone feels like explaining that it would be nice to)
In the net-snmp command line tools, you specify the port number in the host identifier, like so:
192.168.1.12:162
At least, that works on my machine.
I agree that this is not really apparent from the man page of snmptrap, so I understand why you couldn't figure it out. The rest of the format is, however, described in the man page to a somewhat satisfactory extent.
Edit: As was pointed out in the comment, the address format is described on the man page for snmpcmd:
http://www.net-snmp.org/docs/man/snmpcmd.html

Resources