ASPL Manual v 1.00
© 2024 by SetSphere.COM
[MINING WEBSPHERE JMV IN A CLOUD]
WORKSPACE WASCLOUD DESCRIPTION:
ASPL mining the IBM WebSphere Application servers JVMs and JARs processes during run time. Use ASPL in cloud computing environment where applications are being heterogeneously distributed: being clustered, or having repetitive configuration, or being bootstrapped horizontally with multiple virtual machines. Comparing the configuration of distributed systems has been problematic, however it can be realized with the use of the ASPL interpreter that objectify the configuration data and compare it as datasets.
Define function to collect the open files by a process
aspl> DEF FN wasof := gglsof(pno,%%1,destem,/opt/IBM.*/WebSphere/AppServer,calchksum,1,calentropy,0,exceptdrgx,(apache
eclipse),fext,%%2,exceptfrgx,(apache
Define function to collect the open JAR files by a process
aspl> DEF FN wasjarcloud := gglsof(pno,%%1,destem,/opt/IBM.*/WebSphere/AppServer,fext,jar,calchksum,1,calentropy,0,exceptdrgx,(apache
eclipse),exceptfrgx,(apache
Define function to collect the open files by a process
aspl> DEF FN wascloud := gglsof(pno,%%1,destem,/opt/IBM.*/WebSphere/AppServer,calchksum,1,calentropy,0,exceptdrgx,(apache
eclipse),exceptfrgx,(apache
Define functions to compare two datasets
aspl> DEF FN cmp2fmtm := {fU {f\,`mtm~ %%1 %%2}{f\,`mtm~ %%2 %%1}{f&,`mtm~ %%1 %%2}}
(define the function cmp2fmtm)
aspl> DEF FN cmp2sets := {gU {g\, %%1 %%2}{g\, %%2 %%1}{g&, %%1 %%2}}
(define the function cmp2sets)
aspl> DEF FN dif2fchk := {fU {f\,`c~ %%1 %%2}{f\,`c~ %%2 %%1}}
(define the function cmp2sets)
aspl> DEF FN dif2sets := {gU {g\, %%1 %%2}{g\, %%2 %%1}}
(define the function cmp2sets)
aspl> DEF FN cmp2f := {fU {f\, %%1 %%2}{f\, %%2 %%1}{f&, %%1 %%2}}
(define the function cmp2sets)
aspl> DEF FN cmp2fchk := {fU {f\,`c~ %%1 %%2}{f\,`c~ %%2 %%1}{f&,`c~ %%1 %%2}}
(define the function cmp2sets)
Show the defined functions
aspl> def
(print the defined functions)
Define the following quotient relations
aspl> q r1 := frx=.*$,c=
(define the quotient relation r1 to gather similar checksum)
aspl> q r2 := frx=.*$,c~
(define the quotient relation r2 to gather difference in checksums)
aspl> q r3 := frx=.class$,c=
(define the quotient relation r3 to gather similar checksum for .class files)
aspl> q r4 := frx=.class$,c~
(define the quotient relation r4)
aspl> q r5 := frx=.jar$,c=
(define the quotient relation r5 to gather similar checksum for .jar files)
aspl> q r6 := frx=.jar$,c~
(define the quotient relation r6)
Show the defined quotient relations
aspl> q
(print the quotient relation table)
Collect the datasets
aspl> wascloud1 = FN wascloud(3042)
(call the function wascloud() on process id 3042 assign it to wascloud1)
aspl> wascloud2 = FN wascloud(27969)
(call the function wascloud() on process id 27969 assign it to wascloud2)
aspl> wascloud3 = FN wascloud(28026)
(call the function wascloud() on process id 28026 assign it to wascloud3)
aspl> wasjarcloud1 = FN wasjarcloud(3042)
(call the function wasjarcloud() on process id 3042 assign it to wasjarcloud1)
aspl> wasjarcloud2 = FN wasjarcloud(27969)
(call the function wasjarcloud() on process id 27969 assign it to wasjarcloud2)
aspl> wasjarcloud3 = FN wasjarcloud(28026)
(call the function wasjarcloud() on process id 28026 assign it to wasjarcloud3)
Get the open files per process (ending in .jar) and remove the leading stem /opt/IBM.*/WebSphere/AppServer
aspl> wasjps1 = gglsof(pno,3042,destem,/opt/IBM.*/WebSphere/AppServer,fext,jar,calchksum,1,calentropy,0)
(call GG function gglsof() on process id 3042 assign it to wasjps1)
aspl> wasjps2 = gglsof(pno,27969,destem,/opt/IBM.*/WebSphere/AppServer,fext,jar,calchksum,1,calentropy,0)
(call GG function gglsof() on process id 27969 assign it to wasjps2)
aspl> wasjps3 = gglsof(pno,28026,destem,/opt/IBM.*/WebSphere/AppServer,fext,jar,calchksum,1,calentropy,0)
(call GG function gglsof() on process id 28026 assign it to wasjps3)
Get the open files per process and remove the leading stem /opt/IBM.*/WebSphere/AppServer
aspl> wasps1 = gglsof(pno,3042,destem,/opt/IBM.*/WebSphere/AppServer,calchksum,1,calentropy,0)
(call GG function gglsof() on process id 3042 assign it to wasps1)
aspl> wasps2 = gglsof(pno,27969,destem,/opt/IBM.*/WebSphere/AppServer,calchksum,1,calentropy,0)
(call GG function gglsof() on process id 27969 assign it to wasps2)
aspl> wasps3 = gglsof(pno,28026,destem,/opt/IBM.*/WebSphere/AppServer,calchksum,1,calentropy,0)
(call GG function gglsof() on process id 28026 assign it to wasps3)
Get all open files per process,
aspl> waslsof1 = gglsof(pno,3042,calchksum,1)
(call GG function gglsof() on process id 3042 assign it to waslsof1)
aspl> waslsof2 = gglsof(pno,27969,calchksum,1)
(call GG function gglsof() on process id 3042 assign it to waslsof1)
aspl> waslsof3 = gglsof(pno,28026,calchksum,1)
(call GG function gglsof() on process id 3042 assign it to waslsof1)
aspl> wasof1 = FN wasof(3042)
aspl> wasof2 = FN wasof(27969)
aspl> wasof3 = FN wasof(28026)
aspl> wasjars1 = FN wasof(3042,jar)
aspl> wasjars2 = FN wasof(27969,jar)
aspl> wasjars3 = FN wasof(28026,jar)
Print some density information about set variables
aspl> density waslsof1
aspl> density wasof1
aspl> density wasjps1
Print the histogram comparing the densities
aspl> density waslsof1 wasof1 wasjps1
Print the similarity between wascloud1 and wasjarcloud1
aspl> sim wascloud1 wasjarcloud1
(print the similarity between wascloud1 wasjarcloud1)
aspl> f\ wascloud1 wasjarcloud1
(print the wascloud1 files removing all .jar files)
aspl> sim wasjps1 wasps1
(print the similarity between wasjps1 wasps1)
aspl> f\ wasjps1 wasps1
(print the difference between wasjps1 wasps1 )
aspl> f\ wasps1 wasjps1
(show only these files in ps1 excluding the .jar files )
aspl> d_ps1jps1 = f\ wasps1 wasjps1
(get the these files in ps1 excluding the .jar files )
aspl> d_ps2jps2 = f\ wasps2 wasjps2
(show only these files in ps2 excluding the .jar files )
aspl> f\ d_ps1jps1 d_ps2jps2
(get the these files in ps2 excluding the .jar files )
aspl> f\ d_ps2jps2 d_ps1jps1
aspl> d_ps3jps3 = f\ wasps3 wasjps3
(show only these files in ps3 excluding the .jar files )
aspl> f\ d_ps3jps3 d_ps1jps1
(show the JAR files in process 28026 not in process 3042 )
aspl> f\ d_ps3jps3 d_ps2jps2
(show the JAR files in process 28026 not in process 27969)
aspl> f& d_ps1jps1 d_ps2jps2
(show and compare the open files in processes 3042 27969)
aspl> fP d_ps1jps1 d_ps2jps2 d_ps3jps3
(print the partitions of JAR open files in processes 3042 27969 28026)
aspl> ,fP d_ps1jps1 d_ps2jps2 d_ps3jps3
(labinate the partition operation to show the partitions of JAR open files in processes 3042 27969 28026 )
Print the similarity between all three websphere runtime processes in the cloud
aspl> sim wasjarcloud1 wasjarcloud2 wasjarcloud3
(print the similarities between wasjarcloud1 wasjarcloud2 wasjarcloud3)
aspl> quit
(quit without saving the workspace)
This example is shown in the following terminal.
terminal for example: MINING WEBSPHERE JMV IN A CLOUD