Java Application Monitor (jamon) του έργου είναι ένα δωρεάν, απλό, υψηλής απόδοσης, το νήμα ασφαλή, Java API που επιτρέπει στους προγραμματιστές να παρακολουθούν εύκολα εφαρμογές παραγωγής. Jamon μπορεί να χρησιμοποιηθεί για τον προσδιορισμό των σημείων συμφόρησης απόδοση των εφαρμογών, την αλληλεπίδραση των χρηστών / εφαρμογής, και επεκτασιμότητα εφαρμογή.
Jamon συγκεντρώνει συνοπτικά στατιστικά στοιχεία, όπως χτυπήματα, οι χρόνοι εκτέλεσης (συνολικό, κατά μέσο όρο, το ελάχιστο, το μέγιστο, τυπική απόκλιση), και ταυτόχρονη αιτήματα εφαρμογής. Τα στατιστικά στοιχεία jamon εμφανίζονται στο clickable jamon έκθεση. Κάντε κλικ έκθεση jamon να δείτε ένα live demo του jamon.
Jamón αναπτύχθηκε κυρίως για την παρακολούθηση εφαρμογές J2EE, ωστόσο μπορεί να χρησιμοποιηθεί σε οποιαδήποτε JDK 1.2 ή υψηλότερη περιβάλλον. Jamon μπορεί να χρησιμοποιηθεί σε Servlets, JSP, το EJB και Java Beans σε διάφορες Servers J2EE Application (Sybase, της EAServer, και WebLogic της BEA, & hellip?), Και μπορεί επίσης να χρησιμοποιηθεί και σε άλλα περιβάλλοντα προγραμματισμού που μπορούν να καλέσουν τον κώδικα της Java (ColdFusion, PowerBuilder, BroadVision , ...).
Μη διστάσετε να συνεχίσετε την ανάγνωση τον οδηγό του χρήστη ή να κατεβάσετε jamon και διαβάστε το Java Docs.
Χρησιμοποιώντας jamon είναι εύκολο. Τοποθετήστε JAMon.jar (90K) στο CLASSPATH σας, και να περιβάλλουν τον κώδικα που θέλετε να παρακολουθούν με την έναρξη του Jamon API είναι () και θα σταματήσει (μεθόδους). Δείτε το δείγμα κώδικα παρακάτω:
εισάγετε com.jamonapi *.?
...
Παρακολούθηση Δευτ = MonitorFactory.start ("myFirstMonitor")?
... Κωδικός Ον Παροδικό ...
mon.stop ()?
Για παράδειγμα, για τη συλλογή στατιστικών στοιχείων για όλες τις σελίδες JSP σε μια web εφαρμογή, ένας προγραμματιστής θα πραγματοποιήσετε μια κλήση με τη μέθοδο start () στην κορυφή της κάθε JSP, και μια κλήση προς τη μέθοδο stop () στο κάτω μέρος. Με λίγα λεπτά λειτουργήσει ο κύριος του έργου θα έχουν στατιστικά για όλες τις σελίδες της εφαρμογής. Τα στατιστικά στοιχεία που θα περιλαμβάνει τον αριθμό της σελίδας επισκέψεων, μέσος χρόνος εκτέλεσης της σελίδας, καθώς και τον αριθμό των χρηστών ταυτόχρονα πρόσβαση σε κάθε σελίδα. Τα στατιστικά στοιχεία μπορούν να εμφανίζονται ως έναν πίνακα HTML καλώντας τη μέθοδο getReport (), ή με τη χρήση JAMonAdmin.jsp.
Jamon δεν απαιτεί ειδικούς λογαριασμούς διαχείρισης. Πολλά εργαλεία παρακολούθησης απαιτούν διοικητικές λογαριασμούς για να εγκαταστήσετε το λογισμικό παρακολούθησης, και να δείτε τα στατιστικά. Λόγω της πολυπλοκότητας αυτών των εργαλείων, οι προγραμματιστές συνήθως περνούν από ειδικά εκπαιδευμένους διαχειριστές να έχουν πρόσβαση παρακολούθηση στατιστικών. Πολλά από αυτά τα εργαλεία παρακολούθησης απαιτούν επίσης τρύπες στα τείχη προστασίας.
Jamón δεν έχει κανένα από αυτά τα προβλήματα. Στατιστικά συγκεντρώθηκαν μέσω jamon είναι διαθέσιμες σε όλους τους προγραμματιστές μέσω JAMonAdmin.jsp. Καμία διοικητική λογαριασμούς, τα δικαιώματα, ή set-up που απαιτούνται για τη συγκέντρωση και προβολή των στατιστικών. Επειδή το Jamon API είναι μέρος του κώδικα της εφαρμογής, οι προγραμματιστές μπορούν να αλλάξουν J2EE App Servers και παρακολούθηση θα συνεχίσει να εργάζεται. JAMonAdmin.jsp είναι προσβάσιμες μέσω HTTP και έτσι μπορούν να προβληθούν χωρίς διάτρηση επιπλέον τρύπες στο firewalls.
Jamón μπορούν να χρησιμοποιηθούν για την παρακολούθηση των συστημάτων παραγωγής. Παρακολούθηση συστημάτων παραγωγής είναι σημαντική, διότι είναι ο μόνος τρόπος που μπορούμε να δούμε τη συχνότητα που μας κώδικας που εκτελείται από τους πραγματικούς χρήστες. Επίσης, πολλές φορές η διαμόρφωση του περιβάλλοντος παραγωγής είναι διαφορετική από τη δοκιμή περιβάλλον, έτσι ώστε οι αριθμοί απόδοσης μεταξύ των δύο περιβαλλόντων μπορεί να είναι σημαντικά διαφορετική. Για τους δύο αυτούς λόγους παρακολούθησης μόνο το περιβάλλον δοκιμής δεν είναι αρκετό.
Σε αντίθεση με πολλά εργαλεία παρακολούθησης, jamon, λόγω ελάχιστη επιβάρυνση επιδόσεις και multi-threaded ικανότητες, μπορεί να χρησιμοποιηθεί σε συστήματα παραγωγής. Jamon μπορεί να απενεργοποιηθεί κατά το χρόνο εκτέλεσης (χρησιμοποιώντας JAMonAdmin.jsp), την περαιτέρω μείωση των γενικών επιδόσεων. Σε 2 Ghz Pentium IV, έναρξη jamon του (), και να σταματήσει (μεθόδους) εκτελούν 500000 φορές ανά δευτερόλεπτο. Μετά την απενεργοποίηση, οι μέθοδοι που εκτελεί 30 εκατομμύρια φορές ανά δευτερόλεπτο.
Για να ελέγξετε jamon για την απόδοση λήψης JAMon.jar και εκτελέστε την παρακάτω εντολή. Ο αριθμός αντιπροσωπεύει το πώς να ξεκινήσετε πολλές φορές (), και η στάση του () θα πρέπει να καλείται σε διάφορες δοκιμές (100.000 θα χρησιμοποιηθούν ως προεπιλογή, εάν ένας αριθμός δεν παρέχεται).
java-cp JAMon.jar com.jamonapi.TestClassPerformance 500000
Το τελευταίο σήμα ("Full Factory TimingMonitor ()") στην έξοδο δείχνει πόσο καιρό χρειάζεται για να λειτουργήσει, όταν η παρακολούθηση είναι ενεργοποιημένη, και η ετικέτα που αρχίζει με το "NullMonitor2 ()" δείχνει πόσο καιρό χρειάζεται για να λειτουργήσει, όταν η παρακολούθηση είναι απενεργοποιημένη.
Jamon είναι ευέλικτο. Πολλά εργαλεία παρακολούθησης ειδικεύονται στην παρακολούθηση συγκεκριμένων τμημάτων της αίτησης. Αυτό μπορεί να υποχρεώσει έναν προγραμματιστή να καταφύγουν σε χρήση πολλαπλών μέσων παρακολούθησης για να καλύψει όλες τις ανάγκες της παρακολούθησης τους. Για παράδειγμα, ένας προγραμματιστής μπορεί να χρησιμοποιήσει διαφορετικά εργαλεία για την παρακολούθηση κάθε ένα από τα παρακάτω: Προβολές σελίδας, EJB επικλήσεις, η μέθοδος κλήσεις και συνδέσεις με βάσεις δεδομένων, ....
Μέθοδος jamon του start () παίρνει μια συμβολοσειρά σαν όρισμα. Αυτή η συμβολοσειρά μπορεί να είναι μια JSP σελίδα όνομα, ένα όνομα EJB, ένα όνομα μεθόδου ή οποιοσδήποτε άλλος κωδικός ή μια έννοια που μπορεί να εκπροσωπείται από ένα string.
Επίσης, επειδή οι στοιχειοσειρές πέρασε με τη μέθοδο εκκίνησης (), ένας προγραμματιστής μπορεί να αποφασίσει τι θέλετε να παρακολουθεί με βάση τα στοιχεία εκτέλεσης. Χρησιμοποιώντας αυτήν την τεχνική μπορούμε να παρακολουθούμε τις τάσεις, καθώς και προβλημάτων απόδοσης. Μερικά παραδείγματα της ευελιξίας jamon είναι:
Κρατήστε τα στατιστικά στοιχεία για την αρχική σελίδα JSP
- Παρακολούθηση Δευτ = MonitorFactory.start ("homepage")?
Κρατήστε τα στατιστικά στοιχεία για τη μέθοδο A Class DataAccess του openConnection () (η οποία ανοίγει μια σύνδεση βάσης δεδομένων)
- Παρακολούθηση Δευτ = MonitorFactory.start ("DataAccess.openConnection ()")?
Κρατήστε τα στατιστικά στοιχεία για κάθε χρήστη που θα συνδεθεί στο σύστημά μας
- Παρακολούθηση Δευτ = MonitorFactory.start (getUserName ())?
Κρατήστε τα στατιστικά στοιχεία για όλες σελίδα προσβάσεις από την ημερομηνία αυτή. Για παράδειγμα, "pageAccesses.05 / 10/02"
- Παρακολούθηση Δευτ = MonitorFactory.start ("pageAccesses». + GetTodaysDate ())?
Τι είναι καινούργιο σε αυτή την έκδοση:
- < li> Αυτή είναι μια μικρή έκδοση που προσθέτει μερικά χαρακτηριστικά που οι χρήστες που ζητούνται μετά την έκδοση 2.7. Jamon εξακολουθεί να απαιτεί JDK 1.4 ή νεότερη έκδοση (με ένα ζευγάρι εξαιρέσεις).
- Αν η έκδοση 2.7 είναι που εργάζονται για σας και δεν θέλετε τα νέα χαρακτηριστικά, τότε αυτό δεν είναι υποχρεωτικό αναβάθμιση.
Τα σχόλια δεν βρέθηκε