Is there a way to view logs from three different remote nodes on one tab on Chainsaw - apache-chainsaw

Is there a way to view logs from three different remote nodes on one tab? Right now I get three tabs open for three nodes.
Here is my log4j config for the same app deployed on three different linux boxes
log4j.appender.HUB=org.apache.log4j.net.SocketHubAppender
log4j.appender.HUB.port=39867
log4j.appender.HUB.LocationInfo=true
log4j.appender.HUB.Threshold=INFO
log4j.appender.HUB.application=remotehost

Yes.
You can create a new tab from existing events via the 'view, create tab from expression' menu item - it will combine events matching the expression into a new tab. As new events which match the expression arrive, they will also be added to the new tab.
This isn't persistent - restart Chainsaw and you have to go through that process again.
If you want to permanently change things, you can modify the 'tab name/event routing expression' under Chainsaw preferences. As events come in, the expression in the 'event routing expression' box is resolved with the values for the current event. If a tab exists with that tab name, the events are added to that tab. If no tab exists, a new tab is created.
An example expression you could use in the 'view, create tab from expression' expression box (assuming the events you are interested in all have an 'application' column with 'remoteHost' as the value in that column):
PROP.application=remoteHost
This second option just builds a string - isn't really an expression like the search and filter expression syntax...
An example tab name/event routing expression you could use to get all events with 'remoteHost' as the application on a tab called 'remoteHost':
PROP.application
By the way, I would suggest checking out the latest developer snapshot of Chainsaw, available here:
http://people.apache.org/~sdeboy

Related

Two different interfaces for AWS Tag Editor?

It seems that there are two different Web UI for AWS Tag Editor (you need an AWS account to try them):
https://resources.console.aws.amazon.com/r/tags
I got this link from AWS Doc
https://eu-west-1.console.aws.amazon.com/resource-groups/tag-editor/find-resources?region=eu-west-1
In Management Console, if you select Resource Group > Tag Editor on the top of the console page, it will take you to this page
The two WebUI behave differently:
The former is global but the latter is region-specific (it will put you into a region even if you don't put the region parameter in the URL)
The former allows you to search for Not tagged in the filter; but the latter does not
The UI are slightly different
Is one of UI a newer version?
Update (2019-05-14)
(Please also see an explanation about the two links being NEW and OLD UIs that AWS offered at a certain point in time) By now the first link is gone. If you visit it, you will get a 404 Not Found error from AWS.
I am part of the team building the new Tag Editor. Yes, you are correct: Classic Tag Editor is deprecated, and will be shut down soon entirely. We are working on full feature parity between the two Editors, so you will very soon find everything you can do in the old one as well in the new one.
To add some more context on your different items below:
1) Both old and new Tag Editor use the same underlying tagging infrastructure, so this should never happen. Maybe there is some browser issue involved here? Feel free to open a support issue so we can look deeper into it, if this continues the case.
2) Yes, the new one also includes Lambda, and will very soon add more resource types. The same by the way for regions: The old Tag Editor supports not all regions, for example eu-north-1 or eu-west-3.
3) No, Route53 Hosted Zones are supported in both Editors. Route53 resources only exists in the us-east-1 region, so maybe you used the Tag Editor in another region?
4) Both Editors show the same data. The old editor merged what you used as Name Tag and the ID in the same field - in the new one, you see only the ID in the column ID, and the Name Tag is displayed in the column Tag: Name.
Searching across regions is something the new Editor soon will support, too, and the same applies for the filter you mention. For showing resources without a specific tag, there is a workaround you already can do: Click on the settings icon in the top right of the table, and enable the tag you are interested in as a column. You then can sort this column so that all untagged ones show up on top.
If you have any other ideas or requests for the Tag Editor, please let us know. The fastest and most reliable way is to just use the 'Feedback' Button in the console in the bottom left.
Cheers,
Florian
Hi I am providing my own answer here (thanks my colleagues Kannan for the insight)
#1 above is what AWS called Class Tag Editor. If you click on the Question mark on the Web UI (upper right corner), you will be taken to a page that says:
This documentation is for classic Tag Editor, which has been
deprecated
So #2 is the version that AWS want us to use.
Below I will called #1 Old and #2 New
I compared the example outputs from our environment (about 50 resources). The two outputs differ in these respects:
New seems to retain past resources for a longer time. For example, if an EC2 instance has been terminated, it may take a
longer time to be removed from the listing of New
New seems to include resources for DynamoDB but Old does not
Old seems to include resources for Route 53 Hosted Zones but New does not.
Both New and Old show Security Groups, but the ID strings are rendered slightly differently.
New renders an ID as sg-xxxxxxxxxxxxxxxxxxxxxx
Old renders an ID as someName (sg-xxxxxxxxxxxxxxxxx)

Registering NiFi template in Kylo with input options

I am trying to create a template in NiFi just like a data ingest template which provide by kylo.
Basically I want to allow user to select input data source it can be database or a file. If he selects file and then database processor should automatically gets disabled.
I have create a template in NiFi and imported it kylo, but while creating feed It does not show the feed input option.
How I can do this.
While registering the template, in the "Input Properties" section, you have to select which properties have to be shown in feed creation UI for user input i.e. Enable "Allow user input?"
Attached the screenshot for reference:
I think the best approach here would be to use the RouteOnAttribute as the step after the Data Source/ Data type is chosen.
This way you don't have to overthink it.
I have been working on Kylo for around 3 months now and surely know a thing or two about it.
While starting a Feed, Kylo asks you for which source you want to start a feed no matter you have a single processor or multiple which can act as a data producer or fetcher. Once you select one and start a feed, rest of the source processors get disabled automatically by Kylo in the resultant deployment of feed.

How to create a Lambda function for AWS IoT Button

I've read though a couple of tutorials, and watched several videos about this topic, but I'm not able to reproduce the steps shown there.
My AWS IoT Button is configurd correctly and works as it should. I then go to the Lambda Management console, and create a new Lambda function from one of the templates. The screen that appears now is different from all the tutorials and videos. Anyway, I have to choose a trigger and select the IoT Button there. The GUI then tells me to configure that trigger. I then enter the serial number of the Button, and don't touch the certificate options, because I already have keys and certificates on my IoT Button. After I made sure that "Enable Trigger" is selected, and click on the "Add" button. Now I'm getting a red box inside the trigger configuration screen saying:
"Empty list of actions is not allowed. At least one action needs to be defined. (Service: AWSIot; Status Code: 400; Error Code: InvalidRequestException; Request ID: 41c78c96-00fe-11e8-a48a-61538c57d315)"
I'm stuck at this point, because I never can assign any Trigger to my function.
It took a bit of mucking around but I think I've figured out how to get around this.
The error is strange, because of course you're trying to create an action. It seems like it's a bug.
Fortunately, you can create it around the other way:
Visit the AWS IoT console
Go to the Act option in the sidebar menu
Click Create to create a new rule
Give a name, and description
For the SQL rule, build a rule that looks like SELECT * FROM 'iotbutton/+' (i.e. enter * for Attribute, etc.)
Add your action - your Lambda function :)
Add an error action too if you wish
Click Create Rule
Press your button and confirm that your Lambda function ran!
I'm assuming you could put your button's DSN in place of the + in the select statement if you have more than one button.

VmWare vSphere: send automatically mail/notification on event

I'm new on vsphere and I have an important question.
Is there a section where I can set parameters that allow a vsphere to send me notifications/email when a condition happens?
For example when a virtual machine cpu usage go over a value that I have set as 'alarm value' or when a virtual machine disk space usage go over a value vsphere send an email/notification that inform me.
I try to navigate over the menu but I don't find anything like this.
can I use an external app?
Haven't done it myself but according to the documentation:
In the Actions tab of the Alarm Settings dialog box, click Add to
add an action.
In the Actions column, select Send a notification email from the drop-down menu.
In the Configuration column, enter recipient addresses. Use commas to separate multiple addresses.
If you're not familiar with alarms at all you may want to take a look at their Alarm Example.

Groups API - someGroup.setShowInGroupDirectory(true) - "List this group in the directory" is checked - group not appearing in "Browse All"

Google Apps for Business account here.
SETUP
I am creating a new group using the Directory API -> all ok.
I am then doing the following:
get the Group I just created using the Groups API and assign it
to "someGroup"
invoke "someGroup.setShowInGroupDirectory(true)"
patch "someGroup" using the Groups API
No issues on the execution - everything comes back with no complaints.
VERIFY
I go to the Google Apps Admin console and search for the group I created. All ok - it appears.
I go to the Google Groups homepage for my domain and click "Browse All". The Group I created does not appear here.
I go to the Google Groups / Information / Directory settings page for the Group I created (https://groups.google.com/a/MY_DOMAIN.com/forum/#!groupsettings/MY_GROUP/directory) and observe that "List this group in the directory" is checked.
However, if at this stage I manually uncheck "List this group in the directory", save, recheck it, save... It does appear in the "Browse All" view. I am trying to build an automated solution and can't really depend on my uses to execute this manual step for every group they create.
I've waited 24+ hours for any background sync to occur and still the group is not appearing in the Browse All view unless I manually toggle as described.
Anyone seen anything similar?
On the off-chance someone finds this one day: it actually took +-24 hours for the groups to start dropping in.
The first test apparently look just under 25 hours; another subsequent one took around 23.
The painful thing is that if you manually uncheck, save, recheck and save, they appear immediately.