Files
spring-integration-samples/intermediate/monitoring/README.md
Artem Bilan cb052d2d98 URL Cleanup
This commit updates URLs to prefer the https protocol.
Redirects are not followed to avoid accidentally expanding intentionally
shortened URLs (i.e. if using a URL shortener).

# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed.
Please review them to see if they can be manually resolved.

* [ ] http://blueprintcss.org (200) with 3 occurrences could not be migrated:
   ([https](https://blueprintcss.org) result AnnotatedConnectException).
* [ ] http://jmesnil.net/ (200) with 1 occurrences could not be migrated:
   ([https](https://jmesnil.net/) result ConnectTimeoutException).
* [ ] http://jtds.sourceforge.net (200) with 1 occurrences could not be migrated:
   ([https](https://jtds.sourceforge.net) result AnnotatedConnectException).
* [ ] http://www.jmesnil.net/stomp-websocket/doc/ (301) with 1 occurrences could not be migrated:
   ([https](https://www.jmesnil.net/stomp-websocket/doc/) result ConnectTimeoutException).
* [ ] http://enfranchisedmind.com/blog/posts/jquery-periodicalupdater-ajax-polling/ (404) with 1 occurrences could not be migrated:
   ([https](https://enfranchisedmind.com/blog/posts/jquery-periodicalupdater-ajax-polling/) result SSLHandshakeException).

# Fixed URLs

## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK.
However, the https status was the same as the http request or http redirected to an https URL, so they were migrated.
Your review is recommended.

* [ ] http://smokejumperit.com (301) with 1 occurrences migrated to:
  https://blog.enfranchisedmind.com/posts/author/candide/?coming_from=smokejumperit.com ([https](https://smokejumperit.com) result UnknownHostException).
* [ ] http://sockjs.org (303) with 2 occurrences migrated to:
  https://github.com/sockjs/sockjs-client ([https](https://sockjs.org) result AnnotatedConnectException).
* [ ] http://platform.beta.mapquest.com/traffic/ (UnknownHostException) with 1 occurrences migrated to:
  https://platform.beta.mapquest.com/traffic/ ([https](https://platform.beta.mapquest.com/traffic/) result UnknownHostException).
* [ ] http://en.wikipedia.org/wiki/Caf%C3%A9 (301) with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/Caf%25C3%25A9 ([https](https://en.wikipedia.org/wiki/Caf%C3%A9) result 400).
* [ ] http://ws.cdyne.com/WeatherWS/ (403) with 3 occurrences migrated to:
  https://ws.cdyne.com/WeatherWS/ ([https](https://ws.cdyne.com/WeatherWS/) result 403).
* [ ] http://blogs.oracle.com/swinger/entry/collections_trick_i_lru_cache (404) with 1 occurrences migrated to:
  https://blogs.oracle.com/swinger/entry/collections_trick_i_lru_cache ([https](https://blogs.oracle.com/swinger/entry/collections_trick_i_lru_cache) result 404).
* [ ] http://static.springsource.org/spring-integration/docs/latest-ga/reference/html/samples.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/docs/latest-ga/reference/html/samples.html ([https](https://static.springsource.org/spring-integration/docs/latest-ga/reference/html/samples.html) result 404).
* [ ] http://static.springsource.org/spring-integration/reference/html/messaging-routing-chapter.html (301) with 3 occurrences migrated to:
  https://docs.spring.io/spring-integration/reference/html/messaging-routing-chapter.html ([https](https://static.springsource.org/spring-integration/reference/html/messaging-routing-chapter.html) result 404).
* [ ] http://docs.spring.io/spring-integration/reference/html/samples.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/reference/html/samples.html ([https](https://docs.spring.io/spring-integration/reference/html/samples.html) result 404).
* [ ] http://static.springsource.org/spring-integration/reference/htmlsingle/ (301) with 4 occurrences migrated to:
  https://docs.spring.io/spring-integration/reference/htmlsingle/ ([https](https://static.springsource.org/spring-integration/reference/htmlsingle/) result 404).
* [ ] http://xml.apache.org/xslt (404) with 3 occurrences migrated to:
  https://xml.apache.org/xslt ([https](https://xml.apache.org/xslt) result 404).
* [ ] http://customcode.info (503) with 1 occurrences migrated to:
  https://customcode.info ([https](https://customcode.info) result 503).

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://activemq.apache.org/ with 1 occurrences migrated to:
  https://activemq.apache.org/ ([https](https://activemq.apache.org/) result 200).
* [ ] http://db.apache.org/derby/ with 1 occurrences migrated to:
  https://db.apache.org/derby/ ([https](https://db.apache.org/derby/) result 200).
* [ ] http://developer.mapquest.com/ with 1 occurrences migrated to:
  https://developer.mapquest.com/ ([https](https://developer.mapquest.com/) result 200).
* [ ] http://docs.oracle.com/javase/tutorial/jmx/mbeans/index.html with 1 occurrences migrated to:
  https://docs.oracle.com/javase/tutorial/jmx/mbeans/index.html ([https](https://docs.oracle.com/javase/tutorial/jmx/mbeans/index.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.html) result 200).
* [ ] http://static.springsource.org/spring-integration/api/org/springframework/integration/store/MessageGroupStoreReaper.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring-integration/api/org/springframework/integration/store/MessageGroupStoreReaper.html ([https](https://static.springsource.org/spring-integration/api/org/springframework/integration/store/MessageGroupStoreReaper.html) result 200).
* [ ] http://static.springsource.org/spring-integration/docs/2.2.0.RC3/reference/htmlsingle/ (301) with 2 occurrences migrated to:
  https://docs.spring.io/spring-integration/docs/2.2.0.RC3/reference/htmlsingle/ ([https](https://static.springsource.org/spring-integration/docs/2.2.0.RC3/reference/htmlsingle/) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/convert/ConversionService.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/convert/ConversionService.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/convert/ConversionService.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/serializer/Deserializer.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/serializer/Deserializer.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/serializer/Deserializer.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/serializer/Serializer.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/core/serializer/Serializer.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/core/serializer/Serializer.html) result 200).
* [ ] http://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html ([https](https://static.springsource.org/spring/docs/current/javadoc-api/org/springframework/web/client/RestTemplate.html) result 200).
* [ ] http://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol ([https](https://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol) result 200).
* [ ] http://en.wikipedia.org/wiki/Binary_Synchronous_Communications with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/Binary_Synchronous_Communications ([https](https://en.wikipedia.org/wiki/Binary_Synchronous_Communications) result 200).
* [ ] http://en.wikipedia.org/wiki/CURL with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/CURL ([https](https://en.wikipedia.org/wiki/CURL) result 200).
* [ ] http://en.wikipedia.org/wiki/Control_character with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/Control_character ([https](https://en.wikipedia.org/wiki/Control_character) result 200).
* [ ] http://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol with 2 occurrences migrated to:
  https://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol ([https](https://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol) result 200).
* [ ] http://en.wikipedia.org/wiki/Java_Message_Service with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/Java_Message_Service ([https](https://en.wikipedia.org/wiki/Java_Message_Service) result 200).
* [ ] http://en.wikipedia.org/wiki/Netcat with 2 occurrences migrated to:
  https://en.wikipedia.org/wiki/Netcat ([https](https://en.wikipedia.org/wiki/Netcat) result 200).
* [ ] http://en.wikipedia.org/wiki/Newline with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/Newline ([https](https://en.wikipedia.org/wiki/Newline) result 200).
* [ ] http://en.wikipedia.org/wiki/OAuth with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/OAuth ([https](https://en.wikipedia.org/wiki/OAuth) result 200).
* [ ] http://en.wikipedia.org/wiki/SOAP with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/SOAP ([https](https://en.wikipedia.org/wiki/SOAP) result 200).
* [ ] http://en.wikipedia.org/wiki/Telnet with 2 occurrences migrated to:
  https://en.wikipedia.org/wiki/Telnet ([https](https://en.wikipedia.org/wiki/Telnet) result 200).
* [ ] http://en.wikipedia.org/wiki/Transmission_Control_Protocol with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/Transmission_Control_Protocol ([https](https://en.wikipedia.org/wiki/Transmission_Control_Protocol) result 200).
* [ ] http://en.wikipedia.org/wiki/XML with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/XML ([https](https://en.wikipedia.org/wiki/XML) result 200).
* [ ] http://en.wikipedia.org/wiki/XPath with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/XPath ([https](https://en.wikipedia.org/wiki/XPath) result 200).
* [ ] http://en.wikipedia.org/wiki/XSLT with 1 occurrences migrated to:
  https://en.wikipedia.org/wiki/XSLT ([https](https://en.wikipedia.org/wiki/XSLT) result 200).
* [ ] http://hillert.blogspot.com/2011/01/marshal-json-data-using-jackson-in.html with 1 occurrences migrated to:
  https://hillert.blogspot.com/2011/01/marshal-json-data-using-jackson-in.html ([https](https://hillert.blogspot.com/2011/01/marshal-json-data-using-jackson-in.html) result 200).
* [ ] http://hillert.blogspot.com/2011/05/testing-email-notifications-with-apache.html with 1 occurrences migrated to:
  https://hillert.blogspot.com/2011/05/testing-email-notifications-with-apache.html ([https](https://hillert.blogspot.com/2011/05/testing-email-notifications-with-apache.html) result 200).
* [ ] http://james.apache.org/ with 1 occurrences migrated to:
  https://james.apache.org/ ([https](https://james.apache.org/) result 200).
* [ ] http://james.apache.org/server/3/quick-start.html with 1 occurrences migrated to:
  https://james.apache.org/server/3/quick-start.html ([https](https://james.apache.org/server/3/quick-start.html) result 200).
* [ ] http://jquery.com/ with 1 occurrences migrated to:
  https://jquery.com/ ([https](https://jquery.com/) result 200).
* [ ] http://meyerweb.com/eric/tools/dencoder/ with 1 occurrences migrated to:
  https://meyerweb.com/eric/tools/dencoder/ ([https](https://meyerweb.com/eric/tools/dencoder/) result 200).
* [ ] http://projects.spring.io/spring-integration/ with 2 occurrences migrated to:
  https://projects.spring.io/spring-integration/ ([https](https://projects.spring.io/spring-integration/) result 200).
* [ ] http://sizzlejs.com/ with 1 occurrences migrated to:
  https://sizzlejs.com/ ([https](https://sizzlejs.com/) result 200).
* [ ] http://tomcat.apache.org/ with 1 occurrences migrated to:
  https://tomcat.apache.org/ ([https](https://tomcat.apache.org/) result 200).
* [ ] http://twitter.com/huntchr with 1 occurrences migrated to:
  https://twitter.com/huntchr ([https](https://twitter.com/huntchr) result 200).
* [ ] http://www.360innovate.co.uk with 1 occurrences migrated to:
  https://www.360innovate.co.uk ([https](https://www.360innovate.co.uk) result 200).
* [ ] http://www.amqp.org/ with 1 occurrences migrated to:
  https://www.amqp.org/ ([https](https://www.amqp.org/) result 200).
* [ ] http://tempuri.org/ (302) with 1 occurrences migrated to:
  https://www.bing.com/ ([https](https://tempuri.org/) result 200).
* [ ] http://www.eclipse.org/jetty/ with 1 occurrences migrated to:
  https://www.eclipse.org/jetty/ ([https](https://www.eclipse.org/jetty/) result 200).
* [ ] http://www.eaipatterns.com/ (302) with 2 occurrences migrated to:
  https://www.enterpriseintegrationpatterns.com/ ([https](https://www.eaipatterns.com/) result 200).
* [ ] http://www.eaipatterns.com/gregor.html (302) with 1 occurrences migrated to:
  https://www.enterpriseintegrationpatterns.com/gregor.html ([https](https://www.eaipatterns.com/gregor.html) result 200).
* [ ] http://www.eaipatterns.com/ramblings/18_starbucks.html (302) with 1 occurrences migrated to:
  https://www.enterpriseintegrationpatterns.com/ramblings/18_starbucks.html ([https](https://www.eaipatterns.com/ramblings/18_starbucks.html) result 200).
* [ ] http://www.gnu.org/licenses/gpl.html with 1 occurrences migrated to:
  https://www.gnu.org/licenses/gpl.html ([https](https://www.gnu.org/licenses/gpl.html) result 200).
* [ ] http://fusesource.com (302) with 1 occurrences migrated to:
  https://www.jboss.org/ ([https](https://fusesource.com) result 200).
* [ ] http://www.microsoft.com/en-us/download/details.aspx?id=23650 with 2 occurrences migrated to:
  https://www.microsoft.com/en-us/download/details.aspx?id=23650 ([https](https://www.microsoft.com/en-us/download/details.aspx?id=23650) result 200).
* [ ] http://www.postgresql.org/ with 1 occurrences migrated to:
  https://www.postgresql.org/ ([https](https://www.postgresql.org/) result 200).
* [ ] http://www.rabbitmq.com/ with 6 occurrences migrated to:
  https://www.rabbitmq.com/ ([https](https://www.rabbitmq.com/) result 200).
* [ ] http://www.w3schools.com/xml/ with 1 occurrences migrated to:
  https://www.w3schools.com/xml/ ([https](https://www.w3schools.com/xml/) result 200).
* [ ] http://forum.springsource.org/archive/index.php/t-84006.html (301) with 1 occurrences migrated to:
  https://forum.spring.io/archive/index.php/t-84006.html ([https](https://forum.springsource.org/archive/index.php/t-84006.html) result 301).
* [ ] http://forum.spring.io/forum/spring-projects/integration/117523-starting-multiple-consumers?p=589517 with 1 occurrences migrated to:
  https://forum.spring.io/forum/spring-projects/integration/117523-starting-multiple-consumers?p=589517 ([https](https://forum.spring.io/forum/spring-projects/integration/117523-starting-multiple-consumers?p=589517) result 301).
* [ ] http://forum.spring.io/forum/spring-projects/integration/119081-dynamic-inbound-channel-adapter-creation with 1 occurrences migrated to:
  https://forum.spring.io/forum/spring-projects/integration/119081-dynamic-inbound-channel-adapter-creation ([https](https://forum.spring.io/forum/spring-projects/integration/119081-dynamic-inbound-channel-adapter-creation) result 301).
* [ ] http://jira.springframework.org/browse/ROO-909 with 1 occurrences migrated to:
  https://jira.springframework.org/browse/ROO-909 ([https](https://jira.springframework.org/browse/ROO-909) result 301).
* [ ] http://jquery.org/license with 1 occurrences migrated to:
  https://jquery.org/license ([https](https://jquery.org/license) result 301).
* [ ] http://junit.org/ with 1 occurrences migrated to:
  https://junit.org/ ([https](https://junit.org/) result 301).
* [ ] http://mina.apache.org/sshd-project with 1 occurrences migrated to:
  https://mina.apache.org/sshd-project ([https](https://mina.apache.org/sshd-project) result 301).
* [ ] http://msdn.microsoft.com/en-us/sqlserver/aa937724.aspx with 1 occurrences migrated to:
  https://msdn.microsoft.com/en-us/sqlserver/aa937724.aspx ([https](https://msdn.microsoft.com/en-us/sqlserver/aa937724.aspx) result 301).
* [ ] http://projects.spring.io/spring-boot with 1 occurrences migrated to:
  https://projects.spring.io/spring-boot ([https](https://projects.spring.io/spring-boot) result 301).
* [ ] http://springsource.com with 1 occurrences migrated to:
  https://springsource.com ([https](https://springsource.com) result 301).
* [ ] http://support.microsoft.com/default.aspx?scid=kb;EN-US;914277 with 2 occurrences migrated to:
  https://support.microsoft.com/default.aspx?scid=kb;EN-US;914277 ([https](https://support.microsoft.com/default.aspx?scid=kb;EN-US;914277) result 301).
* [ ] http://www.360innovate.co.uk/blog/2009/03/periodicalupdater-for-jquery/ with 1 occurrences migrated to:
  https://www.360innovate.co.uk/blog/2009/03/periodicalupdater-for-jquery/ ([https](https://www.360innovate.co.uk/blog/2009/03/periodicalupdater-for-jquery/) result 301).
* [ ] http://www.eaipatterns.com/eaipatterns.html (302) with 1 occurrences migrated to:
  https://www.enterpriseintegrationpatterns.com/eaipatterns.html ([https](https://www.eaipatterns.com/eaipatterns.html) result 301).
* [ ] http://www.google.com/talk/ with 1 occurrences migrated to:
  https://www.google.com/talk/ ([https](https://www.google.com/talk/) result 301).
* [ ] http://www.gradle.org with 4 occurrences migrated to:
  https://www.gradle.org ([https](https://www.gradle.org) result 301).
* [ ] http://www.gradle.org/docs/current/userguide/application_plugin.html with 10 occurrences migrated to:
  https://www.gradle.org/docs/current/userguide/application_plugin.html ([https](https://www.gradle.org/docs/current/userguide/application_plugin.html) result 301).
* [ ] http://www.gradle.org/docs/current/userguide/jetty_plugin.html with 1 occurrences migrated to:
  https://www.gradle.org/docs/current/userguide/jetty_plugin.html ([https](https://www.gradle.org/docs/current/userguide/jetty_plugin.html) result 301).
* [ ] http://www.mapquestapi.com/ with 1 occurrences migrated to:
  https://www.mapquestapi.com/ ([https](https://www.mapquestapi.com/) result 301).
* [ ] http://www.mongodb.org/display/DOCS/Querying with 1 occurrences migrated to:
  https://www.mongodb.org/display/DOCS/Querying ([https](https://www.mongodb.org/display/DOCS/Querying) result 301).
* [ ] http://www.opensource.org/licenses/mit-license.php with 1 occurrences migrated to:
  https://www.opensource.org/licenses/mit-license.php ([https](https://www.opensource.org/licenses/mit-license.php) result 301).
* [ ] http://www.oracle.com/technetwork/indexes/downloads/index.html with 2 occurrences migrated to:
  https://www.oracle.com/technetwork/indexes/downloads/index.html ([https](https://www.oracle.com/technetwork/indexes/downloads/index.html) result 301).
* [ ] http://www.rabbitmq.com/install.html with 4 occurrences migrated to:
  https://www.rabbitmq.com/install.html ([https](https://www.rabbitmq.com/install.html) result 301).
* [ ] http://www.springsource.org/node/3598 with 1 occurrences migrated to:
  https://www.springsource.org/node/3598 ([https](https://www.springsource.org/node/3598) result 301).
* [ ] http://www.springsource.org/spring-amqp with 4 occurrences migrated to:
  https://www.springsource.org/spring-amqp ([https](https://www.springsource.org/spring-amqp) result 301).
* [ ] http://www.springsource.org/spring-integration with 35 occurrences migrated to:
  https://www.springsource.org/spring-integration ([https](https://www.springsource.org/spring-integration) result 301).
* [ ] http://www.springintegration.org/ (301) with 7 occurrences migrated to:
  https://www.springsource.org/spring-integration/ ([https](https://www.springintegration.org/) result 301).
* [ ] http://www.springsource.org/spring-security with 1 occurrences migrated to:
  https://www.springsource.org/spring-security ([https](https://www.springsource.org/spring-security) result 301).
* [ ] http://www.springsource.org/spring-web-services with 1 occurrences migrated to:
  https://www.springsource.org/spring-web-services ([https](https://www.springsource.org/spring-web-services) result 301).
* [ ] http://www.springsource.org/sts with 1 occurrences migrated to:
  https://www.springsource.org/sts ([https](https://www.springsource.org/sts) result 301).
* [ ] http://www.youtube.com/SpringSourceDev with 2 occurrences migrated to:
  https://www.youtube.com/SpringSourceDev ([https](https://www.youtube.com/SpringSourceDev) result 301).
* [ ] http://dev.twitter.com with 1 occurrences migrated to:
  https://dev.twitter.com ([https](https://dev.twitter.com) result 302).
* [ ] http://dev.twitter.com/ with 4 occurrences migrated to:
  https://dev.twitter.com/ ([https](https://dev.twitter.com/) result 302).
* [ ] http://visualvm.java.net/ with 1 occurrences migrated to:
  https://visualvm.java.net/ ([https](https://visualvm.java.net/) result 302).
* [ ] http://www.springsource.com/developer/sts with 4 occurrences migrated to:
  https://www.springsource.com/developer/sts ([https](https://www.springsource.com/developer/sts) result 302).

# Ignored
These URLs were intentionally ignored.

* http://java.sun.com/JSP/Page with 40 occurrences
* http://java.sun.com/jsp/jstl/core with 34 occurrences
* http://java.sun.com/jsp/jstl/fmt with 2 occurrences
* http://java.sun.com/jsp/jstl/functions with 29 occurrences
* http://localhost:8080/broadcast/foo with 2 occurrences
* http://localhost:8080/chat with 1 occurrences
* http://localhost:8080/foo with 3 occurrences
* http://localhost:8080/monitoring with 1 occurrences
* http://localhost:8080/multipart-http/inboundAdapter.htm with 1 occurrences
* http://localhost:8080/rest-http/services/employee/ with 3 occurrences
* http://localhost:8080/rest-http/services/employee/0/search with 1 occurrences
* http://localhost:8080/rest-http/services/employee/1/search with 1 occurrences
* http://localhost:8080/shutdown with 1 occurrences
* http://localhost:8080/sockjs.js with 2 occurrences
* http://localhost:8080/stomp.js with 1 occurrences
* http://localhost:8080/time with 1 occurrences
* http://localhost:8080/ws-inbound-gateway/echoservice with 2 occurrences
* http://localhost:8082 with 1 occurrences
* http://schemas.xmlsoap.org/soap/envelope/ with 1 occurrences
* http://tiles.apache.org/tags-tiles with 1 occurrences
* http://www.example.org/orders with 3 occurrences
* http://www.example.org/orders-bigbooks with 2 occurrences
* http://www.springframework.org/spring-ws/samples/echo with 5 occurrences
* http://www.springframework.org/tags with 34 occurrences
* http://www.springframework.org/tags/form with 18 occurrences
* http://www.w3.org/1999/XSL/Transform with 1 occurrences
2019-03-22 15:59:21 -04:00

88 lines
4.6 KiB
Markdown

Spring Integration - Monitoring
================================================================================
This application demonstrates managing and monitoring Spring Integration Applications.
It is based on the STS 'Spring Integration Project (war)' template project, available using
New... | Spring Template Project
It was used in the **Managing and Monitoring Spring Integration** webinar available on the [SpringSource Developer YouTube Channel][].
If you wish to see the changes made during the webinar, please use the following git command:
git log -p <The commit titled 'Webinar End State'>
To run the sample, in STS, use:
Run As... | Run on Server
and then use [VisualVM][]/JConsole to explore the [MBeans][].
The twitter search results can be examined at `http://localhost:8080/monitoring`.
Alternatively, there is a simple `main` class `SpringIntegrationTest`.
## 2.2 Updates:
The application context now includes an example of &lt;int-jmx:notification-publishing-channel-adapter/&gt;, to which the tweets are published. You can navigate to the MBean - **spring.application:type=TweetPublisher,name=tweeter**, click the _Notifications_ tab and then subscribe. You will then see the notifications.
An additional class _NotificationListener_ is now included. It demonstrates the use of &lt;int-jmx:notification-listening-channel-adapter&gt; and &lt;int-jmx:attribute-polling-channel-adapter&gt;.
Also, it shows how to use an &lt;int-jmx:operation-invoking-channel-adapter&gt; to stop/start the
_dummyAdapter_ in the web application.
These adapters use a client connector to connect to the Twitter search web application to catch notifications published by it, polls the _sendCount_ attribute of the _twitterChannel_. and invokes operations on the _dummyAdapter_.
You will need to update the credentials on the _clientConnector_ in _remote-monitor-context.xml_ to match your environment. If you are using STS, you can find the credentials in _Servers | [server] | jmxremote.password_. You can then run the _NotificationListener_'s main method.
You should observe log output of the notifications as well as polling the channel's _sendCount_. Simply use the console to enter 'n' to stop and 'y' to start the adapter.
These changes show how you can create a sophisticated monitoring application using Spring Integration - it is important to understand that the application being monitored doesn't have to be a Spring or Spring Integration application - any application that exports MBeans can be monitored in this way.
## Note:
Twitter now requires an authenticated user to perform searches. By default, this project now uses a dummy adapter to avoid having
to configure the credentials. To use a real
adapter, uncomment the __spring.profiles.active__ `context-param` element in the `web.xml`.
To run the `SpringIntegrationTest` command-line application, use `-Dspring.profiles.active=twitter` command line argument in the launch configuration.
However, you will need to configure OAuth and set the values in the OAuth properties.
To use OAuth authentication/authorization with Twitter you must create a new Application on the Twitter Developer's site.
Follow the directions below to create a new application and obtain the consumer keys and the access token:
* Go to [https://dev.twitter.com/](https://dev.twitter.com/)
* Log in to your account
* Go to *My applications*.
* Click on 'Create a new application' link and fill out all required fields on the form provided;
* Submit the form.
* If everything is successful you'll be presented with the 'Consumer Key' and 'Consumer Secret'.
* Copy both values to a safe place.
* On the same page you should see 'My Access Token' button on bottom of the page.
* Click on it and you'll be presented with two more values: 'Access Token' and 'Access Token Secret'.
* Copy these values to a safe place as well.
When done, fill out **oauth.properties** file so it looks similar to this.
twitter.oauth.consumerKey=4XzBPabcJQxyBzzzH3TrRQ
twitter.oauth.consumerSecret=ab2piKdMfPu8bVa3ab6DAIvIWEVZyMDL0RSEN2I8
twitter.oauth.accessToken=21691649-4XYZY5iJEOfz2A9qCFd9SjBRGb3HLmIm4HNE6AMv4
twitter.oauth.accessTokenSecret=AbRxUAvyNCtqQtvxFK8w5ZMtMj20KFhB6oEfTA0
NOTE: the above values are samples only.
--------------------------------------------------------------------------------
For help please see the Spring Integration documentation:
https://www.springsource.org/spring-integration
[MBeans]: https://docs.oracle.com/javase/tutorial/jmx/mbeans/index.html
[SpringSource Developer YouTube Channel]: https://www.youtube.com/SpringSourceDev
[VisualVM]: https://visualvm.java.net/