JBoss view active user sessions - jboss

We have a JBoss server with a single J2EE on it. I wish to find out who are the current active users using that application. Does JBoss give me any utilities that lets me view those existing sessions? (NOT the count, but who all are logged in) The question is kinda lame, but so is my JBoss knowledge :)
I checked the JBoss community, but it only had a couple of relative unanswered questions there. The information i'm looking for would help me in maintenance cycles. I do not wish to reboot the system when users are still using it. We also need to keep a track of any illegal activities on our server. Hence the requirement.
Would appreciate any pointers :)
Regards,
Abhi

http://docs.jboss.org/jbossas/docs/Server_Configuration_Guide/4/html/clustering-http-monitor.html
Enter on your JMX console : ex: ip:port/jmx-console/
Look for "jboss.cache:service=TomcatClusteringCache" on objectName Filter and Apply.
Enter on MBean jboss.cache:service=TomcatClusteringCache (the first option, ignore interceptors)
Look for "printDetails" and invoke it. It shows all opened sessions and attributes.

In CLI:
First of all connect to the server using jboss-cli.sh (it is inside /bin ):
jboss-cli.sh --connect --controller=<ip-server>:9990
For standalone mode:
[standalone#ip-address:9999 /] /deployment=${deployment-name}/subsystem=undertow:read-attribute(name=active-sessions)
For domain mode:
[domain#ip-address:9999 /] /host=${host-name}/server=${server-name}/deployment=${deployment-name}/subsystem=undertow:read-attribute(name=active-sessions)
In Web Management Console:
Access web console using "http://ip-address:9990/"
Select "Deployments" from the left bottom corner.
According to the mode you use:
For standalone mode:
From left panel, select: "deployment"-"${deploymentname}"-"subsystem"-"undertow",
Click on "Data" tab on the main page
For domain mode:
From left panel, select: "Server Groups"-"${server-group-name}"-"deployment"-"${deployment-name}"-"view"-"subsystem"-"undertow"
Click on "Data" tab on the main page

go to /jmx-console/
search for type=Manager or service=ClusterManager
click on the right context.
property "activeSessions" gives the number of sessions

go to JMX console by http://localhost:8080/jmx-console.
Search for your MBEAN on that..
click on that.. there you can find loads of information.

Related

Is there any example for ejabberd mod_carboncopy?

I am trying to add in Mod_carboncopy for Ejabberd, but not sure how to configure it in the web admin panel. Or would i have to config it in the config.yml instead??
I am not sure what is the expected behavior or how to config it, so i need some point to see where to start from.
1.) If i can config it in the web admin panel in the options for mod_carboncopy?
2.) Do i have to config it in config.yml
3.) After i config it do i have to reboot the server??
4.) After that is set up. Would i see the copy straight away in a RAW input for device 2, if device 1 sends out a message??
Thanks for your time!
I have just finished it. It is actually quite simple.
All you have to do is make sure your ejabberd is 15.03 or later, which has the carboncopy on by default. Then if you are using strophe, it is very simple to write the plugin. All you have to do is to enable it through IQ. Then everythings good to go!!

Can not log in to Management Console

I have set up JBoss Fuse, created a fabric and installed the fabric:web feature as explained in the resource Using the Management Console. I can browse http://hostName:8181 and it shows the Management Console login screen.
However, whichever user/pass combination I try, the response is "Failed to log in, Forbidden". It also shows an icon with an exclamation mark, when I click that I see the following messages appear:
[Branding] enabled branding
[Core] Management Console started
That does not help much either. How do I know what login combination I should use? It is not clear to me what I am logging into in the first place.
In your fuse install folder under /etc there is a file called user.properties. Is the user admin with password admin filled in? If not, then at least admin user should be allowed.
If yes, try simply restarting the server. I am not sure why buy that has helped in some cases for me. Do a osgi:shutdown and then start it again.
Have you tried admin/admin?
I believe those are the default credentials.

Get Logged On User IBM Personal Communications in VBScript Macro

We Use IBM Personal Communications iSeries Access for Windows version 6.0. When you launch the program you initially get a Log on Prompt that lets you enter a server, user name and password.
It then gives you the log on screen to the server itself and you have to log on a second time. Between the two log ons I'm trying to work out a "Startup Macro"
I don't have anything in it right now because I cannot figure out how to get ONE particular value from the Session, the USER NAME.
I can get the screen title, session name, macro name, but I can NOT for the life of me figure out how to get the user name. I've tried every possible combination of strings and "variable" names I can think of, and nothing.
I've searched the web and all I can ever find is how to record and auto logon to the green screen which is not what I want.
To be clear I just need the Username used to logon to the Personal Communications iSeries Access for Windows program, pre green-screen logon.
It's important to note that IBM i Access for Windows is much more than just the 5250 emulator. There's an ODBC driver, a printer emulator, AFP printer drivers and the graphical Navigator for i. That IBM i signon popup doesn't come from the 5250 emulator. It comes from a lower level IBM i Access for Windows process. Try it yourself. Reboot the PC. Don't start the emulator. DO start IBM i Navigator for Windows. You'll get the signon popup.
It looks like you are trying to automate a 'no signon' signon. The user name is probably stored in the registry, depending on the version of Windows you are using and the version of IBM i Access for Windows. Windows 7: Start > All Programs > IBM i Access for Windows > IBM I Access for Windows Properties Choose the Administration System tab and you'll see the server and user. HKCU > Software > IBM > Client Access Express > CurrentVersion > AS400 Operations Navigator > Application Administration > CurrentAdminSysUser > My Connections
I think, for this, you need to get into the ActiveX Control that comes with iSeries Access. This little code C# snippet should work:
AS400System sys1 = new AS400System();
sys1.Define("mySystemNameHere");
if (sys1.IsConnected(cwbcoServiceEnum.cwbcoServiceAny) != 1)
{
sys1.Connect(cwbcoServiceEnum.cwbcoServiceTelnet);
}
String user = sys1.UserID;
sys1.Disconnect(cwbcoServiceEnum.cwbcoServiceAll);
You'll need to find cwbx.dll and add it as a reference to your project.
If the user is already connected from another application, no dialog will appear. The program will connect, get the connected user id, and then disconnect. If the user has never connected since logging in, then a logon dialog will appear.

JBOSS 7 Monitoring Tools

Any good suggestion for Monitoring JBOSS 7 in Production ? I would also like to configure alerts based on certain condition. Of course , It has to be Open source.
Thanks.
You can use standard JConsole that comes with JBoss dependencies added. It's used to monitor your servers state and mbeans, it's very useful.
To test it on localhost start your server and then run the JConsole from your server/bin directory and select JBoss in the Local process selection.
To use it on "remote" server, start your server on "REMOTE_HOST" and then run JConsole from an JBoss/bin directory and connect with the followin string
service:jmx:jmx-remoting://REMOTE_HOST_NAME:9999 (or the port you use) and enter the username and password.
Secondly, for more detailed info of objects creation, memory leaks, CPU% (profiling) there is another one as:
http://jbossprofiler.jboss.org/
You can try to use free open source APM like scouter.
It shows very useful realtime performance information of every request.
And also you can set a threshold of resources and can make plugin for alerting to external.
https://github.com/scouter-project/scouter
JBoss7 need to set module option.
-Djboss.modules.system.pkgs=~~~,scouter

JBoss default password

What's the JBoss 5.x EAP default web console password?
The default credentials are:
login: admin
password: admin
But if you use EAP these credentials are turned off by default and there is no active user (security reasons :)). If you want to turn on these users, you have to edit the following file in your current profile: ./deploy/management/console-mgr.sar/web-console.war/WEB-INF/classes/web-console-users.properties. It should be enough to remove the # sign from the line with the user.
If you want to create a new user, don't forget to set up the correct groups in web-console-roles.properties file.
You can easily find information where these information are stored: just open the ./conf/login-config.xml file and find the proper security domain definition. In the case of the Web Console application, it will be web-console policy.
Also if you want to have access to JMX, you have unlock JMX Console. Just check the following files in the conf/props/ directory (in your profile): jmx-console-users.properties and jmx-console-roles.properties.
I just had to uncomment the line in jboss-eap-5.0\jboss-as\server\default\conf\props\jmx-console-users.properties
admin=admin
Thats it. Restart Jboss and I was about to get in to JBOSS JMX. Magically this even fixed the error that I used to get while shutting down Jboss from Eclipse.
I can also verify the above solution except I had to change in
**..\server\<server profile>\conf\props\jmx-console-users.properties**
If you are using Talend MDM Server, the login is:
login: admin
password: talend
See more: http://wiki.glitchdata.com/index.php?title=TOS:_Accessing_the_Talend_MDM_Server
This differs from the default JBoss login of admin/admin
The password setup file is also login-config.xml in this case.
I suggest visit Add digest auth in jmx-console and read oficial documentation for Configure admin consoles, you can add more security to your JBoss AS console and at these link explains where are the role and user/pass files that you need to change this information for your server and how you can change them. Also I recommend you quit all consoles that you don't use because they can affect to application server's performance.
Also there are others links about securing jmx-console that could help you, search in jboss as community site for them (I can't put them here for my actual reputation,sorry). Never you should has the password in plain text over conf/props/ files.
Sorry for my bad English and I hope my answer be useful for you.
just commenting the line of user and password in file
./server/default/conf/props jmx-console-users.properties worked for me
Step 1:
jmx-console-users.properties
admin=admin
Step 2:
jmx-console-roles.properties
admin=JBossAdmin,HttpInvoker
Step 3: Restart or start the JBoss instance.
Now you should good to go...
Go to the jmx console, enter JBoss login URL, then enter admin as username and admin password.
as suggested in other posts, probably you don't have any user defined. it's not advisable to manually edit the configuration files. you should use the add-user (.sh or .cmd) utility as explained in https://access.redhat.com/documentation/en-US/JBoss_Enterprise_Application_Platform/6/html/Installation_Guide/chap-Getting_Started_with_JBoss_Enterprise_Application_Platform_6.html#Add_the_Initial_User_for_the_Management_Interfaces