struct shmTime { int mode; /* 0 - if valid set * use values, * clear valid * 1 - if valid set * if count before and after read of * values is equal, * use values * clear valid */ int count; time_t clockTimeStampSec; /* external clock */ int clockTimeStampUSec; /* external clock */ time_t receiveTimeStampSec; /* internal clock, when external value was received */ int receiveTimeStampUSec; /* internal clock, when external value was received */ int leap; int precision; int nsamples; int valid; int dummy[10]; };
If set, the values in the record (clockTimeStampSec, clockTimeStampUSec, receiveTimeStampSec, receiveTimeStampUSec, leap, precision) are passed to ntp, and the valid-flag is cleared.
If not set, a timeout is reported to ntp, nothing else happend
If set, the count-field of the record is remembered, and the values in the record (clockTimeStampSec, clockTimeStampUSec, receiveTimeStampSec, receiveTimeStampUSec, leap, precision) are read. Then, the remembered count is compared to the count now in the record. If both are equal, the values read from the record are passed to ntp. If they differ, another process has modified the record while it was read out (was not able to produce this case), and failure is reported to ntp. The valid flag is cleared.
If not set, a timeout is reported to ntp, nothing else happend
Additional Information


| Name | State | Device type | IP address | Policies | Owner | |
|---|---|---|---|---|---|---|
| {{item.name}} view_quilt |
Unavailable
Not connected
Connected
Unknown
|
{{item.componentType}} | {{item.ipAddress}} |
Show Policies
{{id}}
None
|
{{item.ownerName ? item.ownerName : "None"}} | |
| No devices registered. | ||||||


Timestamped notes written to a yaml file in the directory of your choice.
for Mac OS X
By using the /code
prefix, you can save and view multi-line code blocks. You can even use specific the language name (eg: /java
, /ruby
) to get syntax highlighting in your code block.
All log entries are stored as multi-line values in yaml, so you can grep from them on your host machine, without worry about encoding.
lines:
- code: false
language: false
line: Some plain text
time: 'Sep 20 2015, 2:46 pm'
timestamp:<PHONE_NUMBER>269
- code: false
language: false
line: 'And now for some code!'
time: 'Sep 20 2015, 2:46 pm'
timestamp:<PHONE_NUMBER>893
- code: true
language: javascript
line: |-
app.on('window-all-closed', function() {
app.quit();
});
time: 'Sep 20 2015, 2:46 pm'
timestamp:<PHONE_NUMBER>045
- code: true
language:
- python
line: |-
def weighted_choice(choices):
total = sum(w for c, w in choices)
r = random.uniform(0, total)
upto = 0
for c, w in choices:
if upto + w > r:
return c
upto += w
assert False, "Shouldn't get here"
time: 'Sep 20 2015, 2:46 pm'
timestamp:<PHONE_NUMBER>558


Muggle L
Technology Is Muggle's Magic
✕
☰
Menu
Home
Search
Categories
Tags
Pdfs
Slice
DO NOT EAT THOSE
MyGoooosh Git
Drafts
2019-05-23
📓Draft Test
©
DG
Since 2016 |
Github
|
Twitter
| Theme By
Yihui Xie
|
RSS
Feed


(PECL net_gopher >= 0.1)
gopher_parsedir — Translate a gopher formatted directory entry into an associative array
$dirent
) : arraygopher_parsedir() parses a gopher formatted directory entry into an associative array.
While gopher returns text/plain documents for actual document requests. A request to a directory (such as /) will return specially encoded series of lines with each line being one directory entry or information line.
dirent
The directory entry.
Returns an associative array whose components are:
Upon failure, the additional data entry of the returned array will hold the parsed line.
Example #1 Hypothetical output from gopher://gopher.example.com/
0All about my gopher site. /allabout.txt gopher.example.com 70 9A picture of my cat. /pics/cat.png gopher.example.com 70 1A collection of my writings. /stories gopher.example.com 70 hThe HTTP version of this site. URL:http://www.example.com gopher.example.com 70 1Mirror of this site in Spain. / gopher.ejemplo.co.es 70 iWelcome to my gopher site. error.host 1 iPlease select one of the options above error.host 1 iSend complaints to /dev/null error.host 1 iLong live gopher! error.host 1
In the example above, the root directory at gopher.example.com knows about one DOCUMENT identified by 0 located at gopher://gopher.example.com:70/allabout.txt. It also knows about two other directory (which have their own listing files) at gopher://gopher.exmaple.com:70/stories and at gopher://gopher.ejemplo.co.es:70/. In addition there is a binary file, a link to an HTTP url, and several informative lines.
By passing each line of the directory listing into gopher_parsedir(), an associative array is formed containing a parsed out version of the data.
Example #2 Using gopher_parsedir()
<?php
$directory = file("gopher://gopher.example.com");
foreach($directory as $dirent) {
print_r(gopher_parsedir($dirent));
}
?>
以上例程会输出：
Array ( [type] => 0 [title] => All about my gopher site. [path] => /allabout.txt [host] => gopher.example.com [port] => 70 ) Array ( [type] => 9 [title] => A picture of my cat. [path] => /pics/cat.png [host] => gopher.example.com [port] => 70 ) Array ( [type] => 1 [title] => A collection of my writings. [path] => /stories [host] => gopher.example.com [port] => 70 ) Array ( [type] => 254 [title] => The HTTP version of this site. [path] => URL:http://www.example.com [host] => gopher.example.com [port] => 70 ) Array ( [type] => 1 [title] => Mirror of this site in Spain. [path] => / [host] => gopher.ejemplo.co.es [port] => 70 ) Array ( [type] => 255 [title] => Welcome to my gopher site. [path] => [host] => error.host [port] => 1 ) Array ( [type] => 255 [title] => Please select one of the options above. [path] => [host] => error.host [port] => 1 ) Array ( [type] => 255 [title] => Send complaints to /dev/null [path] => [host] => error.host [port] => 1 ) Array ( [type] => 255 [title] => Long live gopher! [path] => [host] => error.host [port] => 1 )


Below 5 examples illustrate how this plugin exports the randomly generated object to XLS, CSV, PDF, DOC and only from the frontend and without any communication to the backend!
Please adjust the below inputs to generate a sample object and export it to XLS format:
Please adjust the below inputs to generate a sample object and export it to CSV format:
Please adjust the below inputs to generate a sample PDF file:
Please adjust the below inputs to generate a sample DOC file:
Please adjust the below input to generate a sample PDF file:


Thank you for your order with Guildbit
You have ordered the package: {{ package }}
Please use the following link to create your server: https://guildbit.com/payment/create/{{ uuid }}
If you have any questions, please feel free to contact us.


🏝 Deep Learning Workshop
- Python
- ~ TensorFlow
- ~ Jupyter Notebooks
- ~ Google Colaboratory
Venture into AI and deep learning with this two-day workshop. You will be taken from the mathematical and theoretical foundations, to building models and neural networks in TensorFlow.
You will apply as you learn, working on exercises throughout in a supportive and collaborative environment.
The second day is group projects centered around implementing deep learning models in TensorFlow.
Concepts covered
- Programming vs. Machine Learning vs. Deep Learning
- Notation of Neural Networks
- Autoencoders, Visual Search
- Representation Learning, Embeddings
- Convolutions, Pooling
- Neurons, Weights, Activation Functions
- Layers, Loss Functions, Optimisation
- Optimisation, Gradient Descent, Regularisation
- TensorFlow, Building and Training Models
- Data Loading, TensorBoard, Model Evaluation
Essential details
| Duration | 2 days
9am-5pm sharp, every day. |
| Costs | $1,750* (Standard) |
| Location | Melbourne CBD |
| Dates/Tickets |
|
| Requirements | A laptop. |
| Prerequisites |
Take our Python Quiz on Google Forms
If you answer at least 80% of the questions in this quiz correctly, you'll receive a 10% discount code! |
*Note: People that identify as women receive a 15% discount (use the code "FEMINISM"), and people of Aboriginal or Torres Strait Islander descent can attend for free (use the code "ATSI"). These discounts are provided as part of our commitment to diversity, empowerment and rebalancing.
Breakdown of the days
Day 1 - Fundamentals: Deep Learning, Learning Theory, Convolutions, Embeddings.
The first day provides a solid base of knowledge, by covering key concepts through group learning and exercises.
Attendees will implement a reference model in TensorFlow, and learn the necessary components of all deep learning training pipelines.
Day 2 - Group Projects.
The last day provides hands-on experience in deep learning model development, in TensorFlow.
Participants will consolidate their knowledge by working in small groups on independent projects. Project options vary across image processing, embeddings, and generative models.
Previous Workshop Photos
Testimonials
"I highly recommend this workshop to anyone who is looking for a solid introduction to Deep Learning including its applications and where it fits in the AI landscape. The mix of hands-on and presented material was very well balanced and blended. The workshop atmosphere was both convivial and conducive to learning."
Robin - Data Analyst
"As the top "deep learningers" in the town, the organisers have profound knowledge and experience. They are also active in sharing their knowledge and getting more people interested. Their lecture notes are fascinating and can engage audiences of all levels. If you ever got "buzzed" by 'deep learning', here's where you should go."
Fei - Data Scientist
"I found this a fun introduction to deep learning fundamentals, the TensorFlow toolkit, and how it can be applied to real-world situations. Sometimes you just need a bit of bootstrap to get your mind going with an emerging technology, and this course does just that."
Maree - Software Developer
"[this] deep learning workshop is a very thought out and fairly balanced exercise of theory and practical training useful for anyone trying to decipher the landscape of deep learning."
Rohit - Software Developer
"Amazing!"
Georgie - Researcher
"I appreciated there were many exercises to work hard on, and ask any question without judgment. Noon and Josh went to great lengths to explain things in different ways to ensure everyone was on the same page. I was glad to see ethics being added and hearing the team acknowledge the unknowns in the field."
Mia - Full-Stack Developer


{% extends "base_user.html" %} {% block title %}Service {{ service.name }} logs{% endblock %} {% block content %}
Note: timestamps in logs are recorded in the UTC timezone.
Back to execution details


This plugin integrates SOASTA CloudTest and SOASTA TouchTest features into Jenkins.
Plugin Information |
|---|
View SOASTA CloudTest on the plugin site for more information. |
The current version of this plugin may not be safe to use. Please review the following warnings before use:
The CloudTest Jenkins plugin provides the ability to
- Easily run the MakeAppTouchTestable utility on an iOS or Android project
- Silently install an iOS app on a connected device
- Play CloudTest compositions and include the output in the build's test results
- Launch and tear down grids, results databases, and test environments.
Prerequisites
The CloudTest plug-in requires Jenkins 1.580.1 or later.
Global Configuration Options
Before using the plug-in, you will need to provide the CloudTest server information, in the "Manage Jenkins" -> "Configure System" page. This includes the CloudTest URL and a set of credentials. We recommend creating a dedicated CloudTest account for Jenkins to use.
The CloudTest password is encrypted before saving it to disk. It is also masked (e.g. "****") in all output generated during builds.
Build Steps
The plug-in adds the following new build steps:
Make App TouchTestable
Adds the TouchTest Driver library to your app's source code. Typically this build step is inserted right before the build step that compiles the app's code (e.g. before the Xcode build step for iOS, or before the "Invoke Ant" build step for Android).
Install iOS App on Device
Silently installs an IPA file on one or more attached iOS devices. This ensures that your tests run against the latest version of your app.
Note: there is no Android version of this build step, because the Android SDK already provides this functionality ("adb install").
Play Composition
Executes a CloudTest composition, and saves the output in the build's test results. You can include this build step multiple times if there are multiple compositions in your test suite.
Start Grid
Starts the grid with the specified CloudTest server, and name, and ensures that the object reaches a ready status. In the event that the grid fails to reach a ready status, it will be torn down and the build step will fail.
Stop Grid
Terminates the grid, and ensures that the grid reaches a terminated status. In the event that the grid fails to reach a terminated status, the build step will fail.
Start RSDB
Starts the RSDB with the specified CloudTest server, and name, and ensures that the RSDB reaches a ready status. In the event that the RSDB fails to reach a ready status, it will be torn down and the build step will fail.
Stop RSDB
Terminates the RSDB, and ensures that the RSDB reaches a terminated status. In the event that the grid fails to reach a terminated status, the build step will fail.
Test Environments
Note that for test environments you will need to set up a CloudTest Server to point to CloudTest Manager https://cloudtestmanager.soasta.com/concerto/.
Start Test Environment
Starts the test environment with the specified CloudTest server (Note this MUST be CTM), and name, and ensures that the object reaches a ready status. In the event that the test environment fails to reach a ready status, it will be torn down and the build step will fail.
Stop Test Environment
Terminates the test environment, and ensures that the test environment reaches a terminated status. In the event that the test environment fails to reach a terminated status, the build step will fail.
Wake Up iOS Device
Wakes up one or more attached iOS devices, and opens Mobile Safari to the most recently-viewed page (e.g. TouchTest Agent). This can optionally be used at the beginning of a build, to "prep" the devices for testing.
Note: There is no Android version of this build step, because the Android SDK already provides this functionality.
Reboot iOS Device
Reboots one or more attached iOS devices. This can optionally be used at the end of a build, to "reset" for the next one.
Note: There is no Android version of this build step, because the Android SDK already provides this functionality ("adb reboot").
Changelog
Version 2.25 (Released June 13, 2016)
- Added support for CloudTest API tokens. See Section on creating api tokens.
Version 2.24 (Released June 2, 2016)
- Fixed null pointer exception during HTTP client creation.
Version 2.23 (Released May 25, 2016)
- Added support for client side certificates to communicate with a cloud server.
- Manage Jenkins -> Configure System -> CloudTest Servers -> Advanced
- Enter the full path of the keystore file (.jks)
- If no password is required leave blank.
Version 2.22 (Released February 26, 2016)
- Grid management build, and post-build steps (Start, Stop)
- Test environment management build, and post-build steps (Start, Stop)
- Results database (RSDB) management build, and post-build steps (Start, Stop)
- Fixed test connection not working with recent versions of Cloud Test
- The CloudTest plugin will now respect the 'No Proxy Host' list (https://issues.jenkins-ci.org/browse/JENKINS-30907)
- Fixed long timeout issue when checking for build number of a un-reachable CloudTest server
Version 2.21 (Released September 21, 2015)
- Update Jenkins version to 1.580.1
Version 2.20 (released July 20, 2014)
- "Play Composition(s)" build step now supports three new thresholds - "Min Duration”, "Max Duration” and "Average Duration".
Version 2.19 (released July 18, 2014)
- "Play Composition(s)" build step now includes the ability to generate CSV output.
Version 2.18 (released July 9, 2014)
- Results with no content no longer throw a NullPointerException. Instead, an appropriate error message will be displayed in Console and in Test Result.
Version 2.17 (released July 7, 2014)
- "Play Composition(s)" build step now has support for transaction thresholds.
Version 2.16 (released June 11, 2014)
- Display full clip path for validation messages (eg. A nested clip will have all clips on its path output, not just its clip name).
- Blocks cross-site scripting in output of test results.
Version 2.15 (released May 13, 2014)
- "Play Composition(s)" build step no longer outputs duplicate validation clip names. Clip name formatting has changed to be on individual lines and validation messages belonging to the clip are now indented.
Version 2.14 (released May 5, 2014)
- Added clip name to "Play Composition(s)" build step's validation output.
Version 2.13 (released April 7, 2014)
- Dynamic Instrumentation support for "MakeAppTouchTestable" build step.
- Additional JVM options support for "MakeAppTouchTestable" build step.
NOTE: The "jump" in version numbers from 2.8 to 2.13 is due to technical issues encountered while attempting to release the new version of the plug-in. There were no releases between 2.8 and 2.13.
Version 2.8 (released February 26, 2014)
- Null Junit Results are now prevented from triggering bad HTML output in Jenkins.
Version 2.7 (released December 19, 2013)
- Fixed "403 Forbidden" errors when downloading files using CloudTest plugin.
Version 2.6 (released November 22, 2013)
- Fixed NullPointerException seen when additional options are not provided for the "Play Composition(s)" build step.
Version 2.5 (released November 08, 2013)
- Issue where CloudTest servers were not being detected correctly has been resolved.
- New "Additional Options" input for the "Play Composition(s)" build step. Any values entered here will be passed directly to SCommand.
- Server configurations are now managed using a unique ID and friendly name, instead of being bound to the URL. This means that you can use multiple CloudTest accounts with a single server (e.g. for concurrent builds), and can change the URL for a server configuration without affecting existing jobs.
Version 2.4 (released June 25, 2013)
- The "Run App in iOS Simulator" build step now works correctly when only a single CloudTest server has been configured.
Version 2.3 (released June 4, 2013)
- The "Play Composition" build step now works correctly on Windows (JENKINS-17986).
- Improved error message when the plug-in fails to determine the CloudTest server's build number.
Version 2.2 (released May 14, 2013)
- The "Run App in iOS Simulator" build step now automatically launches TouchTest Agent on the simulator.
- Internal changes in preparation for next major CloudTest release.
Version 2.1 (released April 8, 2013)
- SCommand invocations now "inherit" the Jenkins proxy settings.
- File and directory validations no longer show an error when the path includes a variable.
Version 2.0 (released March 15, 2013)
- Initial release.
Attachments:
Configure_System_Screen_Shot.png (image/png)
Configure_System_Screen_Shot.png (image/png)


DataStreamWriter.
foreach
Sets the output of the streaming query to be processed using the provided writer f. This is often used to write the output of a streaming query to arbitrary storage systems. The processing logic can be specified in two ways.
f
This is a simple way to express your processing logic. Note that this does not allow you to deduplicate generated data when failures cause reprocessing of some input data. That would require you to specify the processing logic in the next way.
process
open
close
The object can have the following methods.
open(partition_id, epoch_id)
(for example, open a connection, start a transaction, etc). Additionally, you can use the partition_id and epoch_id to deduplicate regenerated data (discussed later).
process(row): Non-optional method that processes each Row.
process(row)
Row
close(error)
close connection, commit transaction, etc.) after all rows have been processed.
The object will be used by Spark in the following way.
single task in a query. In other words, one instance is responsible for processing one partition of the data generated in a distributed manner.
serialized-deserialized copy of the provided object. Hence, it is strongly recommended that any initialization for writing data (e.g. opening a connection or starting a transaction) is done after the open(…) method has been called, which signifies that the task is ready to generate data.
The lifecycle of the methods are as follows.
For each partition with partition_id: … For each batch/epoch of streaming data with epoch_id: ……. Method open(partitionId, epochId) is called. ……. If open(...) returns true, for each row in the partition andbatch/epoch, method process(row) is called. ……. Method close(errorOrNull) is called with error (if any) seen whileprocessing rows.
For each partition with partition_id:
partition_id
… For each batch/epoch of streaming data with epoch_id:
epoch_id
……. Method open(partitionId, epochId) is called.
open(partitionId, epochId)
open(...)
batch/epoch, method process(row) is called.
close(errorOrNull)
processing rows.
Important points to note:
failures cause reprocessing of some input data. This depends on the execution mode of the query. If the streaming query is being executed in the micro-batch mode, then every partition represented by a unique tuple (partition_id, epoch_id) is guaranteed to have the same data. Hence, (partition_id, epoch_id) can be used to deduplicate and/or transactionally commit data and achieve exactly-once guarantees. However, if the streaming query is being executed in the continuous mode, then this guarantee does not hold and therefore should not be used for deduplication.
close()
returns successfully (irrespective of the return value), except if the Python crashes in the middle.
New in version 2.4.0.
Notes
This API is evolving.
Examples
>>> # Print every row using a function >>> def print_row(row): ... print(row) ... >>> writer = sdf.writeStream.foreach(print_row) >>> # Print every row using a object with process() method >>> class RowPrinter: ... def open(self, partition_id, epoch_id): ... print("Opened %d, %d" % (partition_id, epoch_id)) ... return True ... def process(self, row): ... print(row) ... def close(self, error): ... print("Closed with error: %s" % str(error)) ... >>> writer = sdf.writeStream.foreach(RowPrinter())


--- title: Settings ---
Arkime uses a tiered system for configuration variables. A tiered system allows Arkime to share one config file for many machines. The ordering of sections within the config file doesn't matter.
Order of config variables:
| Setting | Default | Description |
|---|---|---|
| bpf | EMPTY | The bpf filter used to reduce traffic. Used both on live and file traffic. |
| businessDayStart | EMPTY | If both businessDayStart and businessDayEnd are set, it displays a colored background on the sessions timeline graph during business hours. Values are in hours from midnight UTC. For example: 9am EST would be 13. |
| businessDayEnd | EMPTY | If both businessDayStart and businessDayEnd are set, it displays a colored background on the sessions timeline graph during business hours. Values are in hours from midnight UTC. For example: 5pm EST would be 21. |
| businessDays | 1,2,3,4,5 | Displays a colored background on the sessions timeline graph on only these days. businessDayStart and businessDayEnd must be set for these to be of use. Values are comma separted list of days of the week as numbers. The week starts at Sunday = 0 and ends on Saturday = 6. For example: Monday through Friday would be 1,2,3,4,5 |
| certFile | EMPTY | Public certificate to use for https, if not set then http will be used. keyFile must also be set. |
| cronQueries | FALSE |
Set on 1 viewer node per cluster, this viewer node will perform all the cron queries for the cluster.
(Since 3.0) If usersElasticsearch is set, this viewer node will sync shortcuts from the usersElasticsearch to the local elasticsearch. |
| dontSaveBPFs | EMPTY | Semicolon ';' separated list of bpf filters which when matched for a session causes the remaining pcap from being saved for the session. It is possible to specify the number of packets to save per filter by ending with a :num. For example dontSaveBPFs = port 22:5 will only save 5 packets for port 22 sessions. Currently only the initial packet is matched against the bpfs. |
| dontSaveTags | EMPTY | Semicolon ';' separated list of tags which once capture sets for a session causes the remaining pcap from being saved for the session. It is likely that the initial packets WILL be saved for the session since tags usually aren't set until after several packets. It is possible to specify the number of packets to save per filter by ending with a :num. |
| dropGroup | EMPTY | Group to drop privileges to. The pcapDir must be writable by this group or to the user specified by dropUser |
| dropUser | EMPTY | User to drop privileges to. The pcapDir must be writable by this user or to the group specified by dropGroup |
| espTimeout | 600 | For ESP sessions, Arkime writes a session record after this many seconds of inactivity since the last session save. |
| elasticsearch | http://localhost:9200 | A comma separated list of urls to use to connect to the Elasticsearch cluster. If not using a VIP, a different Elasticsearch node can be specified for each Arkime node. If Elasticsearch requires a user/password those can be placed in the url also, http://user:pass@hostname:port |
| elasticsearchTimeout | 300 | Approximate timeout for most viewer requests to elasticsearch. Elasticsearch will automatically cancel any request after this expires. |
| esAdminUsers | EMPTY | A comma separated list of users that are allowed to use the ES Admin stats tab. This tab allows the user to change several of the ES settings from the UI. |
| esClientCert | EMPTY | (Since 2.0) The public key file to use for tls client authentication with elasticsearch. Must also set esClientKey. |
| esClientKey | EMPTY | (Since 2.0) The private key file to use for tls client authentication with elasticsearch. Must also set esClientCert. |
| esClientKeyPass | EMPTY | (Since 2.0) The password for the esClientKey setting. |
| freeSpaceG | 5% | Delete pcap files when free space is lower then this. This does NOT delete the session records in the database. It is recommended this value is between 5% and 10% of the disk. Database deletes are done by the db.pl expire. Can also be specified using a percentage. |
| geoipASNFile | EMPTY | (Pre 1.0) Path to the maxmind geoip ASN file. Download free version |
| geoipFile | EMPTY | (Pre 1.0) Path to the maxmind geoip country file. Download free version |
| geoLite2ASN |
/usr/share/GeoIP/GeoLite2-ASN.mmdb;/data/moloch/etc/GeoLite2-ASN.mmdb (Pre 2.2) /data/moloch/etc/GeoLite2-ASN.mmdb |
A Maxmind account is required to use this feature. We recommend installing and setting up the geoipupdate program included with most Linux releases. (Since 2.2) Semicolon ';' separated list of maxmind geoip country files. The first file found will be used. If no files are found a warning will be issued. To disable warning set to a blank string. (Since 1.0) Path to the maxmind geoip ASN file. Download free version |
| geoLite2Country |
/usr/share/GeoIP/GeoLite2-Country.mmdb;/data/moloch/etc/GeoLite2-Country.mmdb (Pre 2.2)/data/moloch/etc/GeoLite2-Country.mmdb |
A Maxmind account is required to use this feature. We recommend installing and setting up the geoipupdate program included with most Linux releases. (Since 2.2) Semicolon ';' separated list of maxmind geoip country files. The first file found will be used. If no files are found a warning will be issued. To disable warning set to a blank string. (Since 1.0) Path to the maxmind geoip country file. Download free version |
| httpRealm | Arkime | HTTP Digest Realm - Must be in the default section of configuration file. Changing the value will cause all previous stored passwords to no longer work. |
| icmpTimeout | 10 | For ICMP sessions, Arkime writes a session record after this many seconds of inactivity since the last session save. |
| interface | EMPTY | Semicolon ';' separated list of interfaces to listen on for live traffic. |
| keyFile | EMPTY | Private certificate to use for https, if not set then http will be used. certFile must also be set. |
| magicMode | both (since 1.5.0) or libmagic (before 1.5.0) |
libfile can be VERY slow. Less accurate "magicing" is available for http/smtp bodies:
|
| maxFileSizeG | 4 | The max raw pcap file size in gigabytes. The disk should have room for at least 10*maxFileSizeG files. |
| maxFileTimeM | 0 | The max time in minutes between rotating pcap files. Useful if there is an external utility that needs to look for closed files every so many minutes. Setting to 0 means only use maxFileSizeG |
| maxPackets | 10000 | Arkime writes a session record after this many packets since the last save. Arkime is only tested at 10k, anything above is not recommended. |
| maxPacketsInQueue | 200000 | How many packets per packet thread that can be waiting to be processed. Arkime will stop dropping packets if the queue fills up. |
| maxStreams | 1500000 | An aproximiate maximum number of active sessions Arkime/libnids will try and monitor |
| minPacketsSaveBPFs | Semicolon ';' separated list of bpf filters which when matched for a session have their SPI data NOT saved to Elasticsearch. PCAP data is still saved however. It is possible to specify the number of min packets required for SPI to be saved by ending with a :num. A use case is a scanning host inside the network that you only want to capture if their is a conversation "tcp and host <IP_ADDRESS>:1". | |
| ouiFile | EMPTY | The mac address lookup for manufactures file Download free version |
| packetThreads | 1 | Number of threads to use to process packets AFTER the reader has received the packets. This also controls how many packet queues there are, since each thread has its own queue. Basically how much CPU to dedicate to parsing the packets. Increase this if you get errors about dropping packets or the packetQ is over flowing. If using the simple writer, this also controls how many pcap files are open for writing. |
| serverSecret | Value of passwordSecret | The server-to-server shared key. It must be set in the [default] section of the config file, and all viewers in the arkime cluster must have the same value. It can be, and should be changed periodically. |
| passwordSecret | EMPTY | Password hash secret - Must be in [default] section of the config file, and all viewers in the arkime cluster must have the same value. Since elasticsearch is wide open by default, we encrypt the stored password hashes with this so a malicious person can't insert a working new account. It is also used for secure server-to-server communication if serverSecret is not set a different value. Don't set if you do not want user authentication. Changing the value will make all previously stored passwords no longer work. |
| parseCookieValue | false | Parse HTTP request cookie values, cookie keys are always parsed. |
| parseQSValue | false | Parse HTTP query string values, query string keys are always parsed. |
| parseSMB | true | Parse extra SMB traffic info |
| parseDNSRecordAll | false | (Since 1.6) Parse a full DNS record (query, answer, authoritative, and additional) and store various DNS information (look up hostname, name server IPs, mail exchange server IPs, and so on) into multiple ES fields |
| parseSMTP | true | Parse extra SMTP traffic info |
| parseSMTPHeaderAll | false | (Since 1.6) Parse ALL SMTP request headers not already parsed using the [headers-email] section |
| parseHTTPHeaderRequestAll | false | (Since 1.6) Parse ALL HTTP request headers not already parsed using the [headers-http-request] section |
| parseHTTPHeaderResponseAll | false | (Since 1.6) Parse ALL HTTP request headers not already parsed using the [headers-http-response] section |
| pcapDir | EMPTY | Semicolon separated list of directories to save pcap files to. The directory to save pcap to is picked using round robin by default, see pcapDirAlgorithm for more options. |
| pcapDirTemplate | EMPTY | When set, this strftime template is appended to pcapDir and allows multiple directories to be created based on time. |
| pcapDirAlgorithm | round-robin |
When pcapDir is a list of directories, this determines how Arkime
chooses which directory to use for each new pcap file.
Possible values: round-robin (rotate sequentially), max-free-percent (choose the directory on the filesystem with the highest percentage of available space), max-free-bytes (choose the directory on the filesystem with the highest number of available bytes). |
| parsersDir | /data/moloch/parsers ; ./parsers | Semicolon separated list of directories to load parsers from |
| pluginsDir | EMPTY | Semicolon separated list of directories to load plugins from |
| plugins | EMPTY | Semicolon separated list of plugins to load and the order to load them in. Must include the trailing .so |
| rootPlugins | EMPTY | Semicolon separated list of plugins to load as root and the order to load them in. Must include the trailing .so |
| readTruncatedPackets | FALSE | Capture will try and process truncated packets the best it can. In general it is best to have full packet captures for Arkime to work well. |
| rirFile | EMPTY | Path of the RIR assignments file. Download |
| rotateIndex | daily |
Specifies how often to create a new index in Elasticsearch. Use
daily or a form of hourly for busy live instances, use weekly or
monthly for research instances. When choosing a value, the goal
is to have the avg shard be around 30G. Prior to 1.5.0 changing
the value will cause previous sessions to be unreachable through
the interface, since 1.5.0 you can set queryAllIndices if you
need to change the value. Prior to 1.5.0 if using the multi
viewer then all Arkime clusters must have the same value.
Possible values are: hourly, daily, weekly, monthly. 1.5.0 added hourly2, hourly3, hourly4, hourly6, hourly8, hourly12 which will bucket N number of hours together. So hourly3 for example will make it so each shard has 3 hours of data. hourly1 would be the same as hourly and hourly24 would be the same as daily. |
| rulesFiles | EMPTY | A semicolon separated list of files that contain rules. These rules match against fields set and can set other fields or meta data about the sessions. See RulesFormat for the format of the files. |
| sctpTimeout | 60 | For SCTP sessions, Arkime writes a session record after this many seconds of inactivity since the last session save. |
| smtpIpHeaders | EMPTY | Semicolon separated list of SMTP Headers that have ips, need to have the terminating colon ':' |
| spiDataMaxIndices | 1 | Specify the max number of indices we calculate spidata for. Elasticsearch will blow up if we allow the spiData to search too many indices. |
| supportSha256 | FALSE | Generate Sha256 hashes along side of md5 hashes content. |
| tcpSaveTimeout | 480 | For TCP sessions, Arkime writes a session record after this many seconds since the last session save, no matter if active or inactive. |
| tcpTimeout | 480 | For TCP sessions, Arkime writes a session record after this many seconds of inactivity since the last session save. |
| titleTemplate | _cluster_ - _page_ _-view_ _-expression_ |
|
| udpTimeout | 60 | For UDP sessions, Arkime writes a session record after this many seconds of inactivity since the last session save. |
| userNameHeader | EMPTY | Header to use for determining the username to check in the database for instead of using http digest. Use this if you have apache or something else doing the auth. The Web Auth Header checkbox must be set for user. The userNameHeader setting should be the lower case version of the header apache is setting. ONLY set this header on the viewer the reverse proxy is talking to, it doesn't need to be set on every viewer. It is recommended you set viewHost to localhost when using this setting, or use iptables, otherwise a hacker can just send this header. |
| requiredAuthHeader | EMPTY |
Used for allowing an external system like LDAP or Active Directory to
manage user provisioning and activation/deactivation. It is assumed that the
header contains a list of user roles (like active directory groups)
which are inspected against the value in requiredAuthHeaderVal (see below)
to verify that the user is in the appropriate group (ie. "ArkimeUsers"). If
so, the user is authorized to use the system, and if an account does not
already exist for them in the arkime user store,
it is created (see userAutoCreateTmpl )
|
| requiredAuthHeaderVal | EMPTY |
See requiredAuthHeader for more information.
|
| userAutoCreateTmpl | EMPTY |
When using requiredAuthHeader to externalize provisioning
of users to a system like LDAP/AD, this configuration parameter is used
to define the JSON structure used to automatically create a arkime user
in the arkime users database if one does not exist. The user will only
be created if the requiredAuthHeader includes the expected
value in requiredAuthHeaderVal , and is not automatically deleted
if the auth headers are not present. Values can be populated into
the creation JSON to dynamically populate fields into the user database,
which are passed in as HTTP headers along with the user and auth headers.
The example value below creates a user with a userId pulled from the
http_auth_http_user HTTP header with a name pulled from
the http_auth_mail user header. It is expected that these
headers are passed in from an apache (or similar) instance that fronts
the arkime viewer as described in the documentation supporting userNameHeader
{"userId": "${this.http_auth_http_user}", "userName": "${this.http_auth_mail}",
"enabled": true, "webEnabled": true, "headerAuthEnabled": true,
"emailSearch": true, "createEnabled": false, "removeEnabled": false, "packetSearch": true }
|
| viewerPlugins | EMPTY | Semicolon separated list of viewer plugins to load and the order to load them in. Must include the trailing .js |
| viewHost | EMPTY |
The ip used to listen. See the host section of
https://nodejs.org/docs/latest-v8.x/api/net.html#net_server_listen_port_host_backlog_callback
|
| viewPort | 8005 | Port for viewer to listen on |
| viewUrl | http[s]://hostname:[viewport] | The URL used to access this viewer instance |
| webBasePath | / | The base url for Arkime web requests. Must end with a / or bad things will happen. |
| arkimeWebURL | http[s]://hostName:[viewPort]/[webBasePath] | (since 3.0) The website URL for Arkime. Used to create links to the Arkime web UI. Must end with a / or bad things will happen. You can include the "http(s)://" or exclude it. If excluded, http/https will be set by determining whether a keyFile and certFile exist. |
| yara | EMPTY | Where to load Yara rules from. |
| yaraEveryPacket | TRUE | (Since 1.5.0) Apply yara to every packet or just the packets that are classified. |
| yaraFastMode | TRUE | (Since 1.5.0) Set the Yara Fast Mode flag. |
| elasticsearchAPIKey | EMPTY |
(Since 3.0) Use an Elastisearch API key for access without
requiring basic authentication. Once you have created an API Key,
you must base64 encode the id and api_key joined by a colon.
echo -n "id:api_key" | base64 is one way to generate
the base64 key. Notice the -n, you have to make sure you don't
encode an extra newline.
|
| usersElasticsearchAPIKey | EMPTY | (Since 3.0) Use an Elastisearch API key for users DB access without requiring basic authentication. See elasticsearchAPIKey setting for information on creating and encoding an Elasticsearch API Key. See usersElasticsearch setting for information about the Users DB. |
| Setting | Default | Description |
|---|---|---|
| accessLogFile | EMPTY | If left empty, then the viewer will log to stdout. It can be set to a filename and then logging will be directed there. |
| accessLogFormat | :date :username %1b[1m:method%1b[0m %1b[33m:url%1b[0m :status :res[content-length] bytes :response-time ms | (Since 2.3) Set the log record format -- this uses Express Morgan. The string is URL Encoded and so uses %xx to escape special characters. See the Morgan documentation for the list of keywords. |
| accessLogSuppressPaths | EMPTY | (Since 2.3) This is a semi-colon seperated list of URL paths which should not be logged. Setting this to /eshealth.json will suppress logging of all calls to that endpoint. |
| aes256Encryption |
true (since 2.4.0) false (before 2.4.0) |
(Since 2.2.0) Use better encryption when talking between viewer nodes |
| autoGenerateId | false | (Since 1.6) Use Elasticsearch auto generated ids |
| caTrustFile | Empty | Optional file with PEM encoded certificates to use when validating certs. |
| compressES | false | Compress requests to ES, reduces ES bandwidth by ~80% at the cost of increased CPU. MUST have "http.compression: true" in elasticsearch.yml file |
| dbBulkSize | 20000 | Size of indexing request to send to Elasticsearch. Increase if monitoring a high bandwidth network. |
| dbEsHealthCheck | TRUE | Perform an Elasticsearch health check every 30 seconds and report on slowness or if not green. For big clusters this should be disabled. |
| dbFlushTimeout | 5 | Number of seconds before we force a flush to Elasticsearch |
| enablePacketLen | FALSE (2.0 and later), TRUE (before 2.0) | (Since 2.0) Index all the packet lengths in elasticsearch |
| filenameOps | EMPTY |
(Since 1.5.0) A semicolon separated list of operations that use
the filename. Format is fieldexpr=match%value so if
you wanted to set a tag based on part of filenames that start
with gre use tags=/gre-(.*)\\.pcap%gretest-\\1 .
Notice two backslashes are required everywhere you want one
because of ini formatting.
|
| fragsTimeout | 480 | Number of seconds to keep around an ip fragment and try an reassemble it |
| hstsHeader | FALSE | From viewer, return a hsts header on responses |
| huntWarn | 100000 | (Since 1.6.0) Warn users when creating a hunt if more then this many sessions will be searched |
| huntLimit | 1000000 | (Since 1.6.0) Do not create hunts for non admin users if more then this many sessions will be searched |
| huntAdminLimit | 10000000 | (Since 1.6.0) Do not create hunts for admin users if more then this many sessions will be searched |
| iframe | deny |
Used to set the X-Frame-Options header for putting
Arkime in an iFrame. Options include "deny", "notallowed", or a
URL to allow from.
|
| includes | Semicolon ';' separated list of files to load for config values. Files are loaded in order and can replace values set in this file or previous files. Setting includes is only supported in the top level config file. | |
| interfaceOps | EMPTY |
(Since 1.5.0) A semicolon separated list of a comma separted list of operations to set for each interface.
The semicolon list must have the same number of elements as the interface setting.
The format is fieldexp=value .
So for example if you have interface=eth1;eth2 you could set a tag with interfaceOps=tags=eth1;tags=eth2 .
|
| isLocalViewRegExp | EMPTY | (Since 1.6.1) If the node matches the supplied regexp, then the node is considered local. |
| ja3Strings | FALSE | (Since 2.0) Index the raw JA3 strings before hashing them |
| maxESConns | 20 | Max number of connections to Elasticsearch from capture process |
| maxESRequests | 500 | Max number of Elasticsearch requests outstanding in queue |
| maxFreeOutputBuffers | 50 | For capture, the max number of free output buffers we keep around before returning them to the OS |
| maxFrags | 10000 | Max number of ip fragment packets to save and try and match at once |
| maxMemPercentage | 100 | If arkime exceeds this amount of memory it will log an error and send itself a SIGSEGV that should produce a core file. |
| maxReqBody | 256 | For HTTP requests, store this many bytes in the http.requestBody field. Can be disabled by setting to 0. |
| reqBodyOnlyUtf8 | TRUE | Only store request bodies that are utf8 |
| maxTcpOutOfOrderPackets | 256 | (Since 1.5.0) Max number of tcp packets to track while trying to reassemble the TCP stream |
| offlineDispatchAfter |
pre 2.1 - 5000 (unchangeable) 2.1,2.2 - 1000 2.3 - 2500 |
How many packets to read from offline pcap files at once. |
| offlineFilenameRegex | (?i)\.(pcap|cap)$ | Regexp to control which filenames are processed when using the -R option to moloch-capture. |
| pcapBufferSize | 100000 | pcap library buffer size, see man pcap_set_buffer_size |
| pcapReadMethod | libpcap |
Specify how packets are read from network cards:
|
| pcapWriteMethod | normal |
Specify how packets are written to disk:
|
| pcapWriteSize | 262144 | Buffer size when writing pcap files. Should be a multiple of the raid 5/xfs stripe size and multiple of 4096 if using direct/thread-direct pcapWriteMethod |
| prefix | EMPTY | It is possible for multiple Arkime clusters to live inside the same Elasticsearch cluster by giving each Arkime cluster a different prefix value. |
| queryAllIndices | FALSE for viewer, TRUE for multiviewer | (Since 1.5.0) Always query all indices instead of trying to calculate which ones. Use this if searching across that use different rotateIndex values. |
| saveUnknownPackets | EMPTY |
(Since 1.5.2) Save unknown ether, ip, or corrupt packets into
separate files. This variable takes a semicolon separated list of
the following values (applied in order):
|
| simpleEncoding | EMPTY | Arkime support PCAP at Rest Encryption. |
| simpleMaxQ | 2000 | (since 2.0.1) The maximum number of disk queue entries per capture node. Once this limit is hit, packets will not be saved to disk until the disk queue falls below the threshold. The packets will still be processed, so all meta data is still extracted. Sessions that have packets not written to disk will be tagged with pcap-disk-overload. Increasing this value will use more memory when there is disk congestion. |
| snapLen | 16384 | The maximum size of a packet Arkime will read off the interface. This can be changed to fix the "Arkime requires full packet captures" error. It is recommend that instead of changing this value that all the card "offline" features are turned off so that arkime gets a picture of whats on the network instead of what the capture card has reassembled. For VMs, those features must be turned off on the physical interface and not the virtual interface. This setting can be used when changing the settings isn't possible or desired. |
| trackESP | FALSE | (Since 1.5.0) Add ESP sessions to Arkime, no decoding |
| uploadCommand | EMPTY |
If set uploads from the UI are allowed. An upload saves the file and runs capture on it, so its better to just run capture instead of using upload if you can.
Example setting would be /data/moloch/bin/moloch-capture --copy -n {NODE} -r {TMPFILE} -c {CONFIG} {TAGS} . The following templated values will be filled in for you:
|
| uploadFileSizeLimit | EMPTY | (Since 2.0) If set, the max size of pcap files that can be uploaded from the UI |
| usersElasticsearch | EMPTY |
Set this option to which single elasticsearch cluster to use for the users index.
It is possible for multiple Arkime clusters to share the same users table, so that the same accounts and settings work across all clusters.
So the elasticsearch setting would point to a unique elasticsearch cluster per Arkime cluster, while the usersElasticsearch setting would point to a single shared Elasticsearch cluster.
Same format as the elasticsearch option.
(Since 3.0) This setting applys to shortcuts too! Shortcuts will be saved in the usersElasticsearch. Note: cronQueries also has to be set in order for shortcuts to be saved to the usersElasticsearch and synced to each cluster. |
| usersPrefix | [PREFIX] if set otherwise EMPTY | Like prefix but only for the users table. |
| valueAutoComplete | ![multiES] otherwise true | Autocomplete field values in the search expression. |
Arkime since version 2.7.1 has supported basic packet deduplication. The deduplication is done early in the pipeline before a packet queue is assigned. Currently only the iphdr + tcphdr or iphdr + udphdr is used to find duplicate packets, ignoring the TTL field. The deduplication will only look back a configured number of seconds.
The packet deduplication is an expensive CPU task, so you should monitor the "Dup Drops/s" column in capture stats to see if worthwhile.
| Setting | Default | Description |
|---|---|---|
| enablePacketDedup | false | Enable packet deduplication |
| dedupSeconds | 2 | The number of seconds to keep packet information for. |
| dedupPackets | 1048575 | The approximate number of packets to keep information on per second. Set this number to the max number of packets per second you expect. |
Tpacketv3, also known as AFPacket v3, is the preferred reader for arkime and can be used on most
3.x or later kernels. Configure moloch-capture to use tpacketv3 as the reader
method with pcapReadMethod=tpacketv3
in your configuration
file. This is also know as afpacket.
| Setting | Default | Description |
|---|---|---|
| tpacketv3BlockSize | 2097152 | The block size in bytes used for reads from each interface. There are 120 blocks per interface. |
| tpacketv3NumThreads | 2 | The number of threads used to read packets from each interface. These threads take the packets from the AF packet interface and place them into the packet queues. |
| tpacketv3ClusterId | 0 | (Since 2.0) The cluster id for use with PACKET_FANOUT |
Example:
[default] pcapReadMethod=tpacketv3 tpacketv3BlockSize=2097152 interface=eth0 tpacketv3NumThreads=2
To use daq:
rootPlugins=reader-daq.so
pcapReadMethod=daq
in your configuration file
interface
to any special daq interface
value
| Setting | Default | Description |
|---|---|---|
| daqModuleDirs | /usr/local/lib/daq | Directories where the daq modules live |
| daqModule | pcap | The daq module to use |
rootPlugins=reader-pfring.so
pcapReadMethod=pfring
in your configuration file
interface
to any special pfring
interface value
| Setting | Default | Description |
|---|---|---|
| pfringClusterId | 0 | The pfring cluster id |
rootPlugins=reader-snf.so
pcapReadMethod=snf
in your configuration file
interface
to any special snf
interface value
| Setting | Default | Description |
|---|---|---|
| snfNumRings | 1 | Number of rings per interface |
| snfDataRingSize | 0 | The data ring size to use, 0 means use the SNF default |
| snfFlags | -1 | Controls process-sharing (1), port aggregation (2), and packet duplication (3). (Default value uses SNF_FLAGS environment variable) |
| snfNumProcs | 1 | (Since 2.0) The number of capture processes listening on the shared interface |
| snfProcNum | 0 | (Since 2.0) Which capture process this is if using a shared interface |
Since Arkime 2.7.0, we can process PCAP-Over-Ip requests. Two modes are support client and server. Client mode will connect to a pcap-over-ip service, server will listen for pcap-over-ip connections. Read more information about PCAP-Over-Ip.
Client mode is set by using pcapReadMethod=pcap-over-ip-client
.
The interface
setting must have a list of hosts and optional ports to connect to.
Server mode is set by using pcapReadMethod=pcap-over-ip-server
.
The interface
setting is ignored and should just be set to dummy
.
| Setting | Default | Description |
|---|---|---|
| s3Region | us-east-1 | S3 Region to send data to |
| s3Bucket | none | S3 Bucket to store pcap info |
| s3AccessKeyId | (Since 2.1) Obtained from the EC2 IAM Role. | |
| s3SecretAccessKey | (Since 2.1) Obtained from the EC2 IAM Role. | |
| s3Compress | FALSE | Should traffic be compressed before sending |
| s3WriteGzip | FALSE | (Since 2.1) Should the PCAP files be stored on S3 in gzipped form |
| s3StorageClass | STANDARD | (Since 2.1) The S3 storage class to use&emdash;this has pricing implications |
| s3PathAccessStyle | TRUE if there is a period in the bucket name. | (Since 2.1) If true use s3.amazonaws.com/s3Bucket if false use s3Bucket.s3.amazonaws.com |
| s3MaxConns | 20 | Max connections to S3 |
| s3MaxRequests | 500 | Max number of outstanding S3 requests |
| s3ExpireDays | none | Expiration days for S3 stored PCAP files. Expired PCAP files will be deleted. |
| s3Host | none | Override the default endpoint URL for the specified Bucket and Region. This is only used if you want to use a third party s3 server, like a MinIO or pithos instance. |
| s3UseHttp | FALSE | Use HTTP instead of HTTPS to connect to S3 host. |
| Setting | Default | Description |
|---|---|---|
| debug | 0 | (Since 3.0) The debug level to use if NO --debug options are given |
| logESRequests | false | Write to stdout Elasticsearch requests |
| logEveryXPackets | 50000 | Write to stdout info every X packets. Set to -1 to never log status. |
| logFileCreation | false | Write to stdout file creation information |
| logHTTPConnections | true for online captures | Log http connection attempts and information |
| logUnknownProtocols | false | Write to stdout unknown IP protocols |
You can add custom fields to Arkime several ways, including the wise
and tagger plugins. Since Arkime 1.5.2 the easiest way is to use a
[custom-fields] section in the ini file. At capture startup it will
check to make sure all those fields exist in the database. The format
of the line is the similar as used in wise and tagger, except you use
expression=definition
. You will need to also create a
[custom-views] section to display the data on the Sessions tab.
Field definition:
| Setting | Default | Description |
|---|---|---|
| field | The field expression, overrides the key in the ini file | |
| kind | REQUIRED |
|
| count | false | Track number of items with a .cnt field auto created |
| friendly | fieldname | A SHORT description, used in SPI View |
| db | REQUIRED | The DB field name |
| group | Before first dot in field or general | Category for SPI view |
| nolinked | false | (Since 2.1.0) Set to true for linked sessions to have independent values for this field |
| noutf8 | false | (Since 2.1.1) Set to true for the field to be 8 bit instead of utf8 |
| help | fieldname | Help to display in about box or help page |
[custom-fields]
# Format is FieldExpr=text format
theexpression=db:theexpression
sample.md5=db:sample.md5;kind:lotermfield;friendly:Sample MD5;count:true;help:MD5 of the sample
With Arkime "views" are how the SPI data is displayed in the Sessions
tab. Usually there is a unique "view" for each category of data. You
can add custom views to Arkime several ways, including the wise and
tagger plugins. Since Arkime 1.5.2 the easiest way is to use a
[custom-views] section in the ini file. At viewer startup, a new
section will be created for each entry. The format of the line is
name=definition
. Viewer will sort all views by name when
choosing the order to display in.
Field definition:
| Setting | Default | Description |
|---|---|---|
| fields | REQUIRED | A comma separated list of field expression to display. They will be displayed in order listed. |
| title | Defaults to name | The title to get the section on Sessions tab |
| require | REQUIRED | The db session name to require be set to show the section. |
[custom-views]
sample=title:Samples;require:sample;fields:sample.md5,sample.house
[custom-fields]
sample.md5=db:sample.md5;kind:lotermfield;friendly:Sample MD5;count:true;help:MD5 of the sample
sample.house=db:sample.house;kind:termfield;friendly:Sample House;count:true;help:House the sample lives in
The moloch-clusters section is used to describe the various moloch-clusters that are available to forward traffic to either manually or through the CRON functionality. Each line represents a single cluster, with the name just being any unique string.
[moloch-clusters]
cluster1=url:https://arkime.example.com:8005;passwordSecret:password;name:Cluster
cluster2=url:https://cluster2.example.com:8005;passwordSecret:foo;name:Test Cluster
| url | The base url to use to contact cluster |
| passwordSecret | The passwordSecret for the remote cluster, if it is different from current cluster |
| name | Friendly name to display in UI |
The multi viewer is useful when you have multiple Arkime clusters that you want to search across. To use the multi viewer, an extra viewer process and a multies process must be started. The viewer process works like a normal viewer process, except instead of talking to a elasticsearch server, it talks to a multies server that proxies the queries to all the real elasticsearch servers. These two processes can share the same config file and node name section. The viewer part uses the SAME configuration values as above if you need to set anything.
A sample configuration for multi viewer (the elasticsearch variable points to the multies.js process):
[multi-viewer]
elasticsearch=<IP_ADDRESS>:8200
viewPort = 8009
#viewHost = localhost
multiES = true
multiESPort = 8200
multiESHost = localhost
multiESNodes = escluster1.example.com:9200,name:escluster1,prefix:PREFIX,elasticsearchAPIKey:testkey1;escluster2.example.com:9200,name:escluster2
Which you would then use by starting both the multiviewer and multies. This is a sample for running manually (but you should setup startup scripts to run for real):
cd /data/moloch/viewer
/data/moloch/bin/node multies.js -n multi-viewer
/data/moloch/bin/node viewer.js -n multi-viewer
| Setting | Default | Description |
|---|---|---|
| multiES | false | This is the multiES node |
| multiESPort | 8200 | Port that multies.js should listen on |
| multiESHost | EMPTY | Host interface that multies.js should listen on |
| multiESNodes | EMPTY |
Semicolon separated list of Elasticsearch nodes that MultiES should connect to.
The first node listed will be considered the primary node and is used for users/views/queries.
Example: escluster1.example.com:9200,name:escluster1,prefix:PREFIX,elasticsearchAPIKey:testkey1;escluster2.example.com:9200,name:escluster2
Components (comma separated):
|
override-ips is a special section that overrides the MaxMind databases for the fields set, but fields not set will still use MaxMind (example if you set tags but not country it will use MaxMind for the country) Spaces and capitalization are very important.
[override-ips]
<IP_ADDRESS>/16=tag:ny-office;country:USA;asn:AS0000 This is neat
| tag | A single tag to set for matches |
| country | A 3 character country code to set for matches |
| asn | An ASN value to set for matches |
| rir | A RIR value to set for matches |
This section makes it easy to specify HTTP Request headers to index. They will be searchable in the UI using http.[HEADERNAME]
[headers-http-request]
referer=type:string;count:true;unique:true
| type |
|
| unique | true by default, only index unique values |
| count | false by default, create a second field http.[HEADERNAME].cnt with the number items found |
This section makes it easy to specify HTTP Request headers to index. They will be searchable in the UI using http.[HEADERNAME]
[headers-http-response]
location=type:string
server=type:string
This section makes it easy to specify email headers to index. They will be searchable in the UI using email.[HEADERNAME]
[headers-email]
x-priority=type:integer
It is possible to configure right click actions on any SPI data fields. Right click actions can be added based on either the field name or the category of the data. They can be added either in the configuration file or by enabled WISE data sources.
Configuration File Sample:
[valueactions]
VTIP=url:https://www.virustotal.com/en/ip-address/%TEXT%/information/;name:Virus Total IP;category:ip
VTHOST=url:https://www.virustotal.com/en/domain/%HOST%/information/;name:Virus Total Host;category:host
VTURL=url:https://www.virustotal.com/latest-scan/%URL%;name:Virus Total URL;category:url
Each line in the valueactions section contains possible actions:
| Piece | Notes |
|---|---|
| [key]= | The key must be unique and is also used as the right click menu name if the name field is missing |
| actionType |
Needs a url. Supported actionTypes:
|
| func | A javascript function body (feeds into new Function()) that returns a right click action formatted as an object. This is the recommended way if you need to omit the url from an action and can be used to place plain text in the menu. Value is not calculated so one of the keys in the returned action object must be "value" if you want to show name:value pair in the menu (but not req). Formatting substitutions will also be ignored. |
| url | The url to open if selected. There are some basic URL substitutions defined below. |
| name | The menu text to display |
| category | If the field that is right clicked on has this category then display this menu item. All right click entries must have either a category or fields variable defined. |
| fields | A comma separated list of field names. If the field that is right clicked on has one the field expressions in the list then display this menu item. All right click entries must have either a category or fields variable defined. |
| regex | A regex to use on the right clicked text to extract a piece for the URL. The first matching group is substituted for %REGEX% in the url. If the regex doesn't match at all then the menu isn't displayed. |
| users | A comma separated list of user names that can see the right click item. If not set then all users can see the right click item. |
| notUsers | (Since 3.0) A comma separated list of user names that can NOT see the right click item. This setting is applied before the users setting above. |
The possible URL Substitutions are:
| URL Substitutions | Notes |
|---|---|
| %TEXT% | The text clicked on in raw form |
| %UCTEXT% | The text clicked on, upper-cased |
| %URL% | A URL extracted from the text clicked on |
| %HOST% | A hostname extracted from the text clicked on. Sometimes the same as %TEXT%, sometimes a subset. |
| %REGEX% | The first regex group match |
| %EXPRESSION% | The search expression, URI encoded |
| %DATE% |
The search date/time range, eg., startTime=1567447943&stopTime=1569607943 (UNIX seconds) for a custom date range or date=336 (hours) for times relative to now
|
| %ISOSTART% | The beginning of the search date/time range, ISO_8601 formatted |
| %ISOSTOP% | The end of the search date/time range, ISO_8601 formatted |
| %FIELD% | The field name as it would be referenced in a Arkime search expression |
| %DBFIELD% | The field name as referenced in the underlying Elasticsearch database |
| %NODE% | The name of the capture node |
| %ID% | The session ID |
The categories that Arkime uses are:
| Category | Notes |
|---|---|
| asn | An ASN field |
| country | A three letter country code |
| host | A domain or host name |
| ip | An ip address |
| md5 | A md5 of a payload, such as for http body or smtp attachment |
| port | The TCP/UDP port |
| rir | The Regional Internet Registry |
| url | A URL |
| user | A user name or email address |
This section allows you to specify ips or cidrs to drop from being processed. This is different from a bpf filter since the packets will actually reach moloch-capture (and counted) but won't be fully processed. However if you have many ranges/ips to drop it can be more efficient then bpfs. It is possible to also allow ranges inside of dropped ranges using the "allow" keyword. Order added doesn't matter, searching always finds the best match.
[packet-drop-ips]
<IP_ADDRESS>/8=drop
<IP_ADDRESS>/16=allow
<IP_ADDRESS>/24=drop
<IP_ADDRESS>=allow
Arkime provides support for PCAP at rest encodings. Two forms of encodings are currently supported: "aes-256-ctr" and "xor-2048". Please note that xor-2048 is not actually secure and is only for testing.
The current implementation is based around openssl. The encoding that
you wish to use is configured in the config file by setting the
simpleEncoding
variable. The simpleEncoding may be set
either globally or per node.
Each file on disk is encoded by a unique data encryption key (dek).
The dek is encrypted using a key encryption key (kek) when stored.
The encrypted dek, the id of the kek, and the initialization vector
(IV) are all stored per file in Elasticsearch. Which kek is used when
creating files, is selected with the simpleKEKId
variable. The simpleKEKId may be set either globally or per node.
The kek passwords that may be used should be placed in a
[keks]
section of the config file. There is one line for
each kekid to kek mapping. An easy way to create kek passwords is
openssl rand -base64 30
. Remember a kek is password used
to encrypt the dek and NOT the password used to encrypt the files.
The dek is what is used to encrypt the files, and is unique per file.
You MUST secure your config file.
You are not required to use the same keks on all nodes, however, you can if you wish. It is recommended that you rotate your keks occasionally (timing dependent on your risk tolerance) and create new keks to be used. Do NOT delete the old keks until all pcaps which have been encoded with those keks have been expired.
Currently it is not possible to re-encrypt a data encryption key, however, this should be possible in the future with a db.pl command.
Example:
[default]
pcapWriteMethod=simple
simpleEncoding=aes-256-ctr
simpleKEKId=kekid1
[keks]
kekid1=Randomkekpassword1
kekid2=Randomkekpassword2
Advantages:
Disadvantages:
See the WISE page
Arkime can generate netflow for all sessions it saves SPI data for. Add
netflow.so
to the plugins=
line in the config
file.
| Setting | Default | Description |
|---|---|---|
| netflowSNMPInput | 0 | What to fill in the input field |
| netflowSNMPOutput | 0 | What to fill in the output field |
| netflowVersion | 5 | Version of netflow to send: 1, 5, 7 |
| netflowDestinations | EMPTY | Semicolon ';' separated list of host:port destinations to send the netflow |
Arkime can enrich sessions with Suricata alerts.
Suricata and Arkime must see the same traffic and share the same eve.json/alert.json for the plugin to work.
Sessions that have been enriched will have several new fields, all starting with suricata, and will be
displayed in a Suricata section of the standard Arkime session UI.
Arkime matches sessions based on the 5 tuple from the alert.json or eve.json file, only using the items with event_type of alert.
A very simple query to find all sessions that have Suricata data is suricata.signature == EXISTS!
.
Note: there isn't a special Suricata UI inside Arkime, this is just adding new fields to Arkime sessions like wise or tagger do. The Suricata enrichment is done by moloch-capture, so moloch-capture must see the traffic.
Add suricata.so
to the plugins=
line in the
config file.
| Setting | Default | Description |
|---|---|---|
| suricataAlertFile | REQUIRED |
The full path to either the alert.json or eve.json file, make
sure the dropUser or dropGroup can open
the file
|
| suricataExpireMinutes | 60 | (Since 1.5.1) The number of minutes to keep Suricata alerts in memory before expiring them based on the Suricata alert timestamp. For example if a Suricata alert has a timestamp of 1am, the default is to keep looking for matching traffic until 2am (60 minutes). |
Sample Config:
# Add suricata.so to your plugins line, or add a new plugins line
plugins=suricata.so
# suricataAlertFile should be the full path to your alert.json or eve.json file
suricataAlertFile=/nids/suricata/eve.json
See the Tagger page and the Tagger Format page
See the Lua page
| Setting | Default | Description |
|---|---|---|
| luaFiles | EMPTY | The Lua Files to load |
TCP Health Check plugin enables the capture module to listen on a specific TCP port and immediately close accepted connections. This is useful to keep load balancer health checks informed about the capture module working properly. One specific use case is Health Checks for Target Groups in AWS Network Load Balancer.
Add tcphealthcheck.so
to the plugins=
line in the
config file.
| Setting | Default | Description |
|---|---|---|
| tcpHealthCheckPort | EMPTY | Make the capture module listen on this TCP port for health checks. |
Sample config items for max performance. Most of the defaults are fine. Reading Arkime FAQ - Why am I dropping packets and https://github.com/pevma/SEPTun or https://github.com/pevma/SEPTun-Mark-II may be helpful.
# MOST IMPORTANT, use basic magicMode, libfile kills performance
magicMode=basic
pcapReadMethod=tpacketv3
tpacketv3BlockSize=8388608
# Increase by 1 if still getting Input Drops
tpacketv3NumThreads=2
pcapWriteMethod=simple
pcapWriteSize=4194304
# Start with 5 packet threads, increase by 1 if getting thread drops. Should be about 1.5 x # Gbps that need to be captured
packetThreads=5
# Increase the size of ES messages and compress them for lower traffic rates
dbBulkSize=4000000
compressES=true
dbEsHealthCheck=false
# Set to number of packets a second, if still overflowing try 400k
maxPacketsInQueue = 300000
# Uncomment to disable features you don't need
# parseQSValue=false
# parseCookieValue=false
The following rules can help greatly reduce the number of SPI sessions being written to disk:
---
version: 1
rules:
- name: "Dont write tls packets or check yara after 10 packets, still save SPI"
when: "fieldSet"
fields:
protocols:
- tls
ops:
_dontCheckYara: 1
_maxPacketsToSave: 10
- name: "Dont save SPI sessions to ES with only 1 src packet"
when: "beforeFinalSave"
fields:
packets.src: 1
packets.dst: 0
tcpflags.syn: 1
ops:
_dontSaveSPI: 1
- name: "Dont save SPI data for listed hostnames tracked by dst ip:port, use on cloud destinations"
when: "fieldSet"
fields:
host.http:
- ad.doubleclick.net
protocols:
- tls
ops:
_dontSaveSPI: 1
_maxPacketsToSave: 1
_dropByDst: 10


Out of all the assignments I've done at university, this is the one I was dreading the most when it was announced exactly what we had to do. The brief said to create an event day doing something IT related, it could be anywhere and on almost anything, so the scope of it was huge. To give you an idea, some people went to primary schools to talk about safety online, another group did something called "Tech for Troops" where they got those in the forces up to speed with certain technologies. My group however, chose to give a computer security lecture at Doncaster College.
-Return to Projects-
We had such a silly amount of prep to do for this, honestly. Our group was randomly selected, so you had to work around another courses timetabling constraints, same as in the real world I suppose, add in tons of communication difficulties and you get the idea. My role was to talk about how great Sheffield Hallam was to study at (If you're reading this from SHU - give me free stuff for the glowing endorsement!), as well as what my course was all about. I took pictures of the labs, designed the logo we used on the slides, and wrote up most of the slide content. On the day, I was first up to speak to a packed lecture theatre about computer security, university life, and computer networks. We had some fun, practical examples of public and private key exchange, and some "Socrative" tests for the audience to do on their phones in the intermissions.
After it was all done, I was actually surprised at how well we did, I still managed to get a first in the module despite the huge set backs we had, which were: One of our group members quit right before the lecture, we couldn't get any nifty freebies to take along that the university were offering, and the biggest of all - the media students at Doncaster College LOST our video we had to use as PROOF we actually did the damned thing! One of our group had to go back down and get video testimonies to say that we did, in fact, do the lecture we said we did. Now that the dust has settled on all of that, I'd consider doing it again, I wouldn't be totally against the idea of being a teacher either. We shall see what the future holds.
-View The Files-
NOTE - I am absent from these images as I was the photographer
Made with by Max Ingham


{{ if site.Params.comments.giscus }} Please enable JavaScript to view the comments powered by giscus. {{ end }}


Fortnite leak: Return of the Scoped AR and Heavy AR
by Jimmy RussoNew Fortnite leaks suggest that the Scoped AR and Heavy AR (AK) will be returning to Fortnite in future updates.
It looks like Epic will be picking things up on the back-half of Fortnite Chapter 2 Season 1. We’re into week seven and have only seen the Harpoon Gun added to Fortnite. Epic have been prioritizing game optimization of late, which is why there has been a lack of new content throughout Chapter 2.
If we know anything about Epic, we know that things aren’t going to stay this way. The Fortnite team might slow some things down, but they’ll likely be back to regularly updating the game after the Christmas break.
In fact, we should be seeing our first major update in the next few weeks. According to the data miner @Hypex, we will be seeing the Scoped AR and Heavy AR coming back to the game in the near future.
The Fortnite community has always seemed to be hot and cold on the Scoped AR. Players with above-average aim could beam people with the weapon, but it was far more situational than most of the other guns in the class.
In Chapter 2, though, the Scoped AR could be in for a massive upgrade. The wide-open terrain and lack of mobility mean people will have more use for it.
The Heavy AR – or the AK – was another weapon that had Fortnite players split. It’s a strong single-shot weapon but has always had a wide spread and slow fire rate, leaving you unable to effectively spray while you’re using it.
We’ll have to see how things shake out when these guns go back into the game. Will players choose the AK over the AUG and Scar? Probably not, but I could be wrong.
Are you hyped for the return of these reworked weapons? Let us know in the comments!


Eduardo Pineda
Contact
(current)
Portfolio
About Me
Contact Me
Reach Out to Me!
Here's a few different way to keep in touch or check in on my progress:
Phone #:<PHONE_NUMBER>
Email
GitHub Repository
LinkedIn
Grab a copy of my resume!


What is a tracker?
A music tracker - or tracker - is a type of music sequencer: software to create music by defining a sequence of samples to be played at a certain time with a certain pitch.
The name "tracker" comes from "the Ultimate Soundtracker" written by Karsten Obarski and released on the Amiga platform in 1987.
A huge number of other tracker programs followed, steadily improving on the concept, with Protracker as the best known example.
After the Amiga, they made the jump to the PC, spearheaded by FastTracker.
Even today the tracker concept is still used in modern music software like Renoise, Radium and SunVox and it even has a super cool dedicated hardware version.
Tracker programs were made by developers for developers:
You don't enter notes on a musical bar, you enter notes by typing hexadecimal numbers in a grid and you apply effects by entering even more numbers.
Unlike traditional music notation, time is usually represented vertically instead of horizontally, so sequential notes are underneath each other and playback goes from top to bottom.
Multiple numbers/notes in the same column form a "track", multiple tracks form a "pattern", and multiple patterns form a song.
Or, the other way around: a song is made of multiple patterns following each other, where patterns are made of tracks of notes.
To get a feel of what's it all about, we recommend this highly entertaining video made by @Ctrix
For a better understanding of how to use trackers, here are some useful pointers to get you started:
A quick way to get a first idea of how it works, and what the possibilities are, is to load BassoonTracker with a simple piano intro, such as Romeo Knight's "Boessendorfer P.S.S.". And then, load some of the suggested songs displayed in the bottom left of the interface.


It can be anything!
Lorem Ipsum is simply dummy..
Lorem Ipsum is simply dummy..
GitHub is cool
H5 heading
Lorem Ipsum is simply dummy..


lorem ipsum bgfb kgifrb buygfwerfb fgwfb
Hide
show
Fade in
Fade in slow
Fade in Timer
Fade out
Fade out slow
Fade out Timer
Fade Toggle
Fade Toggle Slow
Fade Toggle Timer
writes


Sources
angular-gantt is available on GitHub.
git clone https://github.com/angular-gantt/angular-gantt
Prerequisites
-
Install yarn
-
Run
yarn
to install dependencies
Build
- Run
yarn build
to build distribution files indist
directory
Build Demo
- Run
yarn build-demo
to build demo distribution files indemo.dist
directory
Run demo with development server
- Run
yarn dev


Track your request |
|
| This logs a complete history of all of your requests and will allow you to track any of them. | |
| To track a shipment go to the Track and Trace tab. | |
| Click on Info on the left side of the order line to view all the information associated with your order. | |
| The track and trace will display delivery details in the “Received by” box. | |


New Zealand jury convicts man of murdering British backpacker
by Colin PackhamSYDNEY (Reuters) - A jury in New Zealand on Friday convicted a 27-year-old man of murdering a British woman backpacker, a case that shocked the country and raised questions about its reputation as a safe, easy-going holiday destination.
Grace Millane, 22, went missing in Auckland on Dec. 1 last year, while traveling after finishing university. Police found her body on Dec. 9 in bushland just a few meters from a scenic drive in the Waitakere Ranges.
The man, whose name has been suppressed by the court, met Millane on the evening of Dec. 1 through dating app Tinder, the jury heard. He pleaded not guilty to murder, arguing that she died accidentally during consensual sex.
The jury rejected the argument, convicting him just hours after beginning deliberations. The man is due to be sentenced on Feb. 21 and faces life in prison for murder.
The man’s lawyer, Ian Brookie, could not be reached for comment.
Millane’s parents, David and Gillian, were present throughout the trial.
“Grace was our sunshine and she will be missed forever,” her father told reporters outside the court.
“It will not reduce the pain and suffering we have had to endure,” he said of the verdict.
“Grace was taken in the most brutal fashion a year ago and our lives have been ripped apart.”
The judge thanked the jurors for their service in what he called a particularly difficult case.
Prosecutors had told the jury the convicted man took several photos of Millane’s body on Dec. 2. Later that day, he placed the body in a suitcase and drove in a rental car to where he buried her.
The case stirred public debate about violence toward woman in a country where serious crime was once considered rare.
Thousands of people held candlelight vigils after Millane’s death in an outpouring of grief, with Prime Minister Jacinda Arden holding back tears in an apology to Millane’s family on behalf of the country.


Meet the Team
Ruth Poliakon
Front End Developer
Ruth lives in Denver by way of rural Colorado, Berkeley, and Missoula. She's an entomologist, master gardener, and chicken enthusiast who applies the skills she gained in biological research to front end development.
Roger Lee
React Developer
Roger is a tech enthusiast. For the past 8 years he has been coding and using linux for his own personal projects. He is well versed in the linux environment and BASH. Some programming languages he has had experience with are Python3 CSS HTML C++ Javascript and C#. He is currently on a path to broaden his knowledge base of Web-Development.


Shop
Gangstarr Bootleg Reprint T-Shirt
1990's Norton Champange "Feel the Wind" T-Shirt
1994 Dale Earnhardt "Black Knight" T-Shirt
1990 Salem Sportswear Michael Jordan T-Shirt
Jackets
Jackets
1990 New York Yankees Starter Jacket
(As seen on Nelson Mandela in 1990)
Raiders Jacket
1980's Los Angeles Raiders Starter Jacket
Hats
Hats


| |
| DEPARTMENT OF HOMELAND SECURITY |
| U.S. Customer and Border Protection |
NORTH AMERICAN FREE TRADE AGREEMENT CERTIFICATE OF ORIGIN |
|
| OMB No. |
|
| Exp. |
{{order.expNo}} |
| See back of form for Paperwork Reduction Act Notice |
|
| 1. EXPORTER NAME AND ADDRESS |
{{order.fromLocation?.name}}
{{order.fromLocation?.address}}
{{order.fromLocation?.cityState}}
|
| TAX IDENTIFICATION NUMBER: |
|
| 2. BLANKET PERIOD |
| FROM {{order.fromCalendarYear | date : "shortDate"}} |
| To {{order.toCalendarYear | date : "shortDate"}} |
|
| 3. PRODUCER NAME AND ADDRESS |
| {{order.orgAddress}} |
| {{order.cityState}} |
| TAX IDENTIFICATION NUMBER: |
|
| 4. IMPORTER NAME AND ADDRESS |
{{order.toLocation?.name}}
{{order.toLocation?.address}}
|
|
{{order.toLocation?.cityState}}
|
| TAX IDENTIFICATION NUMBER: |
|
5 DESCRIPTION OF GOOD(S) |
6 HS TARIFF CLASSIFICATION NO. |
7 PREFERENCE CRITERIA |
8 PRODUCER |
9 NET COST |
10 COUNTRY OF ORIGIN |
| {{order.descriptionofGood}} |
{{order.hsTariffClassificationNumber}} |
{{order.preferenceCriterion}} |
{{order.producer}} |
{{order.netCost}} |
{{order.countryofOrigin}} |
| I CERTIFY THAT: |
-
THE INFORMATION ON THIS DOCUMENT IS TRUE AND ACCURATE AND I ASSUME THE RESPONSIBILITY FOR PROVING SUCH REPRESENTATIONS.
I UNDERSTAND THAT I AM LIABLE FOR ANY FALSE STATEMENTS OR MATERIAL OMISSIONS MADE ON OR IN CONNECTION WITH THIS DOCUMENT;
-
I AGREE TO MAINTAIN AND PRESENT UPON REQUEST, DOCUMENTATION NECESSARY TO SUPPORT THIS CERTIFICATE, AND TO INFORM, IN
WRITING, ALL PERSONS TO WHOM THE CERTIFICATE WAS GIVEN OF ANY CHANGES THAT COULD AFFECT THE ACCURACY OF VALIDITY OF THIS
CERTIFICATE;
-
THE GOODS ORIGINATED IN THE TERRITORY OF ONE OR MORE OF THE PARTIES, AND COMPLY WITH THE ORIGIN REQUIRMENTS SPECIFIED FOR
THOSE GOODS IN THE NORTH AMERICAN FREE TRADE AGREEMENT AND UNLESS SPECIFICALLY EXEMPTED IN ARTICLE 411 OR ANNEX 401, THERE
HAS BEEN NO FURTHER PRODUCTION OR ANY OTHER OPERATION OUTSIDE THE TERRITORIES OF THE PARTIES; AND
- THIS CERTIFICATE CONSISTS OF [ ] PAGES, INCLUDING ALL ATTACHMENTS.
|
| 11 |
11a AUTHORIZED SIGNATURE
|
11c NAME
{{order.name}}
|
|
11e DATE(MM/DD/YYYY)
|
11f |
|
{{order.date | date : "shortDate"}}
|
TELEPHONE NO. |
|
11b COMPANY
{{order.companyName}}
|
11d TITLE
{{order.title}}
|
Voice
{{order.telephoneNumberVoice}}
|
Facsimile
{{order.telephoneNumberFacsimile}}
|
|
|


- WHITE - Static variable in class jobicade.util.render.Color
-
- withAlpha(int) - Method in class jobicade.util.render.Color
-
- withBlue(int) - Method in class jobicade.util.render.Color
-
- withBottom(int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given bottommost Y coordinate.
- withCol(int) - Method in enum jobicade.util.geom.Direction
-
Returns the corresponding direction in the same row and the given column.
- withGreen(int) - Method in class jobicade.util.render.Color
-
- withHeight(int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given height.
- withHeight(int) - Method in class jobicade.util.geom.Size
-
Returns a size with a new height.
- withLeast(int, int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given top left coordinate.
- withLeast(Point) - Method in class jobicade.util.geom.Rect
-
- withLeft(int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given leftmost X coordinate.
- withMost(int, int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given bottom right coordinate.
- withMost(Point) - Method in class jobicade.util.geom.Rect
-
- withRed(int) - Method in class jobicade.util.render.Color
-
- withRight(int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given rightmost X coordinate.
- withRow(int) - Method in enum jobicade.util.geom.Direction
-
Returns the corresponding direction in the same column and the given row.
- withTop(int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given topmost Y coordinate.
- withWidth(int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given width.
- withWidth(int) - Method in class jobicade.util.geom.Size
-
Returns a size with a new width.
- withX(int) - Method in class jobicade.util.geom.Point
-
Returns a point with the given X coordinate and the original Y coordinate.
- withX(int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given leftmost X coordinate.
- withY(int) - Method in class jobicade.util.geom.Point
-
Returns a point with the given Y coordinate and the original X coordinate.
- withY(int) - Method in class jobicade.util.geom.Rect
-
Returns a near identical rectangle with the given leftmost Y coordinate.


This is the reference manual for the utility command provided by Ninf-G. (The text is in the format of a UNIX on-line manual.)


You can't make a counterclaim using this service
{% if data['a']=="age" %}
Counterclaims including any interest must be under £10,000.
Use Money Claim Online (opens in a new window), if you're claiming more than £10,000.
If your claim is over £100,000 complete your response and counter claim using form N9B (opens in a new window).
{% elif data['a']=="age2" %}Your counterclaim including any interest must be a fixed amount under £10,000.
If the value of your claim is not yet decided, for example damages or compensation, complete your response and counter claim using form N9B (opens in a new window).
{% elif data['a']=="hwf" %}You won't get your counterclaim fee refunded if you use this service.
If you need help with fees, complete your response and counter claim using form N9B (opens in a new window) to make a claim by post.
{% endif %} Back to response


Service Included are PaYG To CSP Projects, Architecture Design, Infrastructure Migrations, Discovery And Accessments etc.
Add RecordServices Include All the Category Regarding Managed Services, Such as Ticket,Vendor Portal etc.
Add RecordMeetings, Certification Study, Service Improvements, External Training etc.
Add Record


About
Work
Contact
Let's Get In Touch.
Want to discuss a project, an idea, an opportunity? Just fill up this form or write me an email
Name
Email Address
Your Message
Send Message
Thanks
for contacting us! We will get back to you soon!
Home
About
Work
Uses
Contact


How should Texans work to address the clear and present dangers of climate change?
What role should Texan communities and institutions play in combating climate change?
How should the State of Texas prepare for climate impacts on its citizens and ecosystems?


Controling task execution and managing workflow sequence.
Especially important when end result has dependencies between separate systems
Ordered sequence of tasks (commands, calls or any other type of actions).
Strictly formed according to the managed system's needs.
Device or service configuration/operational status that fulfills defined requirements.
Ability to evaluate state and execute actions only when a change to current state is needed.
Idempotent operation is one that has no additional effect if it is called more than once with the same input parameters.
interface Ethernet1/1
description Some descriptive text
switchport
switchport mode trunk
switchport trunk allowed vlan 4012-4013
no shutdown
---
name: Ethernet 1/1
description: Some descriptive text
swithport: true
switchport_mode: trunk
allowed_vlans:
- 4012
- 4013
shutdown: false
{
"name": "Ethernet 1/1",
"description": "Some descriptive text",
"swithport": true,
"switchport_mode": "trunk",
"allowed_vlans": [
4012,
4013
],
"shutdown": false
}
4012
4013
Some descriptive text
Ethernet 1/1
false
true
trunk
interface {{ name }}
description {{ description }}
{% if switchport %}
switchport
{% if switchport_mode == "trunk" %}
switchport mode {{ swithport_mode }}
switchport trunk allowed vlan none
{% for vlan in allowed_vlans %}
switchport trunk allowed vlan add {{ vlan }}
{% endfor %}
{% endif %}
{% endif %}
{% if shutdown %}
no shutdown
{% endif %}
YANG - A Data Modeling Language for the Network Configuration Protocol (NETCONF)
+--rw interfaces
| +--rw interface* [name]
| +--rw name string
| +--rw description? string
| +--rw type identityref
| +--rw enabled? boolean
Full model in Yang catalog
Source: Cisco blogs
Traditionally state and "the truth" was derived from the network device
Network configuration representation is usually unstructured.
Source: NXOS config guide learning link
Layer converting unstructured data to other data representation forms.
Links for thurther development
This page is maintained by the team at Network to Code and has links to numerous resources and anything you could think of related to network automation.
This course from Kirk Byers offers free training on Python, using specific examples relevant to Python. Kirk is the maintainer of Netmiko and is a core contributor on many open source network modules.
All Cisco things related to software development, programmable integration and automation.
A series of blogs introducing various aspects of network programability topics by Julio Gomez
Short, simple, browser-based examples covering fundamentals and examples. I’d recommend not moving onto any others until you’ve done all the lessons offered.
A Slack workspace for the network automation community, hosted by Network to Code. There are numerous channels and hundreds of people on this workspace contributing and helping others.
Nexus 7010 (version 6.2.24a)
Nexus 5010 (version 5.1.3 N2 1a)
Nexus 2248TP
---
- name: First playbook
hosts: N5K-1
gather_facts: false
connection: network_cli
tasks:
- name: Ping module
cisco.nxos.nxos_ping:
dest: <IP_ADDRESS>
vrf: management
The purposes of this library are the following:
Software Development Kit