| Pages: 1 2 3 4 5 6 7 8 9 :: [one page] |
| Author |
Thread Statistics | Show CCP posts - 0 post(s) |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
1
|
Posted - 2012.04.13 05:55:00 -
[1] - Quote
After many late nights of hackage and head->keyboard banging, EVE Market Data Relay has entered its public testing phase. This means that it's not the most lively, hopping data source, but it's ready to be poked at.
EVE Market Data Relay is meant to be a high-availability, highly-scalable, real-time market data aggregator feed. I'll be collecting data from every source I can (the various market sites, plus player uploaders pointed directly at EMDR), and relaying it to you in real-time over a distributed network. All data is parsed and re-formatted into Unified Uploader and Data Interchange Format for your ease of consumption.
The idea is to lower the barrier to entry for developers who are working on, or thinking about working on market data-driven sites or applications (this is not limited to being useful on just websites). Instead of having to write boring pollers/scrapers/listeners for the various market sites, and/or get players to point their uploaders at you, EMDR will take care of that, giving you a firehose of data to subscribe to. Over time, we can point our users' uploaders at EMDR, and consolidate data, without some of the past concerns about stability and availability (our only single point of failure is Amazon's DNS service).
The "Using Data from the EMDR network" page shows how easy it is to get started consuming the real-time feed in a number of different languages.
For the curious/nerdy sorts, here's a High Level Overview of the project, as well as a glimpse into its innards.
FAQ
- A centralized data source sounds neat, but what about reliability?
- EMDR is built in a way that eliminates all single points of failure (aside from Amazon's DNS servers). Here's a chart and a run-down showing a dual-stack model.
- What does it cost to use this service?
- Nothing. Additionally, if your application is in the same data center or service as one of our relays, you may not use any of your allotted bandwidth (depends on your provider).
- Why is this better than downloading X Market Service's daily data dumps?
- Depending on your usage case, it may not be better. EMDR is more useful to those who want timely updates to market data, and those who don't want to write software that pulls data from a number of different market sites. We'll also eventually try to get players to point their uploaders in our direction so you don't have to.
- Why not just use EVE Central's SMTP data feed?
- EVE Central's SMTP service is the closest equivalent to EMDR. However, EVE Central is just one data source. We'll be aggregating anything else we can get our hands on, and soliciting uploaders. Also, the technology EMDR is built on makes it super easy to get connected and consuming data. It's also wicked fast/efficient.
- Is the source code available for this project?
- Yes, and it's BSD licensed.
- I have some resources to volunteer. What do I do to help?
- Get in touch with me and let me know, and as we move through testing, I'll get you pieced into the network.
EVE Alerter - Rally your troops! EVE Mail me to get your own corp/alliance alerter http://evealerter.com |

Desmont McCallock
160
|
Posted - 2012.04.13 08:21:00 -
[2] - Quote
I see that you are currently using the EMK & EMD format for uploaded data. What about the unified format? |

Shellac Brookdale
RAZOR Alliance
5
|
Posted - 2012.04.13 09:07:00 -
[3] - Quote
Wow, this looks really ambitious. The technology stack is also sexy. I'd love to play around with ZMQ a bit. However, I'm not sure how useful such a service will be for real world applications, as you don't seem to provide any kind of query methods to access already broadcasted orders. I'm not sure what kind of applications you had in mind when creating this. But being able to pull orders from a certain point back in time would certainly help for apps that won't be online 24/7 and need to keep in sync.
Another approach would be a http feed based solution such as: http://code.google.com/p/pubsubhubbub/ Its based on HTTP and would allow more flexible access to orders by e.g. using URLs for different market categories or regions, access to archived data and caching and load balancing methods.
|

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
2
|
Posted - 2012.04.13 13:32:00 -
[4] - Quote
We support EMK/EMD and Unified Uploader format. If you're talking about the instructions here, I couldn't suggest using Unified Uploader format because, ironically, the EVE Unified Uploader doesn't support the format yet :)
Are there any other clients that do? I'd love to get testing with them. I can share details on how to upload.
Desmont McCallock wrote:I see that you are currently using the EMK & EMD format for uploaded data. What about the unified format?
EVE Alerter - Rally your troops! EVE Mail me to get your own corp/alliance alerter http://evealerter.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
2
|
Posted - 2012.04.13 13:39:00 -
[5] - Quote
Such a service would probably better be accomplished by someone who is subscribed to our firehose, who stored and offered the data up to others. Perhaps one of the other major market sites will get on board eventually. However, historical data is outside the scope of EMDR. I'm not being stubborn, EMDR is just going to do one thing and do it really well. If someone wants to take the data and make it available on their market site, I will gladly point to them in the docs as a source of historical data that at least partially came through EMDR.
Shellac Brookdale wrote: However, I'm not sure how useful such a service will be for real world applications, as you don't seem to provide any kind of query methods to access already broadcasted orders. I'm not sure what kind of applications you had in mind when creating this. But being able to pull orders from a certain point back in time would certainly help for apps that won't be online 24/7 and need to keep in sync.
I guess it does technically rule out a lot of desktop/mobile apps, since they aren't online 24/7, but my primary intended audience is those that want near real-time access to market data. For that particular usage case, EMDR is synonymous to getting uploader data over HTTP, but much more fast, reliable, and efficient. In other words, this is probably most appropriate for websites, or real-time trading applications in the case of a desktop/mobile app (with historical backfilling from EVE Central or EMK/EMD). EVE Alerter - Rally your troops! EVE Mail me to get your own corp/alliance alerter http://evealerter.com |

Desmont McCallock
160
|
Posted - 2012.04.13 13:43:00 -
[6] - Quote
I created the EVECacheParser library in order to use it to built in EVEMon an uploader (EVEHQ will use it too at some point). I intent to support only the unified uploading format so to kinda 'force' the market data sites devs to support that format. As soon as I have the uploader coded and I'm ready to test, I'll drop you all a pm to notify you about it. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
2
|
Posted - 2012.04.13 13:59:00 -
[7] - Quote
Excellent. I quite literally just updated the uploading documentation to include specifics for Unified Format uploading. This may be useful for your test purposes.
Desmont McCallock wrote:I created the EVECacheParser library in order to use it to built in EVEMon an uploader (EVEHQ will use it too at some point). I intent to support only the unified uploading format so to kinda 'force' the market data sites devs to support that format. As soon as I have the uploader coded and I'm ready to test, I'll drop you all a pm to notify you about it. Edit: And of course you will have to create another URL as the endpoint for those using a unified format uploader.
If you let me know when you support the Unified Format, I'll add you to our list on the instructions page as a client that supports it, and may go as far as screenshotting the config process for our users. EVE Alerter - Rally your troops! EVE Mail me to get your own corp/alliance alerter http://evealerter.com |

Desmont McCallock
160
|
Posted - 2012.04.13 14:04:00 -
[8] - Quote
Further more I intent to provide you with code in C# for the using page. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
2
|
Posted - 2012.04.13 14:16:00 -
[9] - Quote
That would be awesome. Thanks!
Desmont McCallock wrote:Further more I intent to provide you with code in C# for the using page.
EVE Alerter - Rally your troops! EVE Mail me to get your own corp/alliance alerter http://evealerter.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
3
|
Posted - 2012.04.15 04:35:00 -
[10] - Quote
We've had a good deal of interest, and the network appears to be handling the subscribers without a hitch. The outbound compression of the data has kept us under 32 MB outbound a day, with our current "replicate EVE Central's feed" data set. Considering that EVE Central appears to be sending us about 320 MB a day, this is a pretty nice ratio.
We'll see how the usage data looks as we add more market data (we're talking to other market sites about getting involved), and may find that we don't need to get very fancy with our relays at all. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

LifeHatesMe
SKULLDOGS RED.OverLord
4
|
Posted - 2012.04.15 19:14:00 -
[11] - Quote
Ilyk Halibut wrote:We've had a good deal of interest, and the network appears to be handling the subscribers without a hitch. The outbound compression of the data has kept us under 32 MB outbound a day, with our current "replicate EVE Central's feed" data set. Considering that EVE Central appears to be sending us about 320 MB a day, this is a pretty nice ratio.
We'll see how the usage data looks as we add more market data (we're talking to other market sites about getting involved), and may find that we don't need to get very fancy with our relays at all. Holy batman, you use the same service I use! +1 for Linode. I do have to ask two questions tho;
1. Are you doing any error detection for bogus submissions that are not valid? 2. Which linode location are you located at, and why haven't you setup a alias for; tcp://relay-linode-atl-1.eve-emdr.com:8050
Let me know, thanks! |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.15 21:57:00 -
[12] - Quote
LifeHatesMe wrote: 1. Are you doing any error detection for bogus submissions that are not valid?
At this point, it's pretty basic, but we do catch some obviously bogus submissions. We'll be improving this with time, though. Ideas are welcome.
LifeHatesMe wrote: 2. Which linode location are you located at,
We're still in initial test deploy mode, so just Atlanta right now. We'll be looking to add additional relays on other providers and other regions within Linode (and other providers) once I have the setup process streamlined a bit. However, we're finding resource util to be so low that there is very little downside to connecting and consuming the feed from other providers right now.
LifeHatesMe wrote: and why haven't you setup a alias for; tcp://relay-linode-atl-1.eve-emdr.com:8050
ZeroMQ has no notion of aliases. It needs a URI to something, whether it be a TCP socket, a local IPC socket, or etc. When you write an application that connects to EMDR, you are using your language's bindings for ZeroMQ, which is maintained by someone other than me. So I really have nothing to do with that, and there's no way to "alias" the URI, since EMDR requires no "EMDR client". Make sense? EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Vaerah Vahrokha
Vahrokh Consulting
574
|
Posted - 2012.04.15 22:44:00 -
[13] - Quote
The idea is very good, but in RL finance the pure real time feeds are a minority and mostly used for pure buy / sell trading platforms.
All the others (I'd say 95 percent of the existing platforms) have a mechanism to query for past data up to present or from time X to time Y.
Without past data storage many of the advanced trading tecniques cannot be used.
Example:
This whole thread.
What can be achieved with data feed + history:
Tritanium, on professional trading platform
Nitrogen Isotopes, on Microsoft Excel graph
Nitrogen Isotopes, with very clear price action
Technetium, on a semi-professional trading platform
There is data available from 2009 (already digested in various formats including industry OHLC, on EvEMarketeer.com) but also older data (EvE Central stored data).
For how EvE markets are structured and because of the lack of leverage, the minimum resolution you can really work with is daily prices.
Having a continuous stream is fantastic but without the ability to go back at least 2 years (even with just daily data) it really falls short. Auditing | Collateral holding and insurance | Consulting | PLEX for Good Charity
Twitter channel |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.16 00:22:00 -
[14] - Quote
Vaerah, I think you may be missing the primary usage case for EMDR.
As far as a market-driven site is concerned, the feed is the exact same thing as having player upload clients pointed at your site. The big difference is that instead of an inefficient smattering of HTTP requests, EMDR feeds you a compressed, fast stream of market data. The actual contents are identical to what a client supporting Unified Uploader Interchange format would be sending to you directly.
You can't think of EMDR as a substitute for actually storing the data, it is only a firehose to feed your data store. If you need historical data, store the stream, or fill in your gaps from external services.
So think of it as a substitute for needing to have uploaders pointed specifically at you. Additionally, it's a central place that the players can point their uploaders at, where the greater community of market sites can get to it. The current reality is that people are forced to solicit their users to point uploaders at their site, and data is supplemented by EVE Central's SMTP feed. If we combined more of our data, we'll all be better off. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

LifeHatesMe
SKULLDOGS RED.OverLord
4
|
Posted - 2012.04.16 02:44:00 -
[15] - Quote
Ilyk Halibut wrote:Vaerah, I think you may be missing the primary usage case for EMDR.
As far as a market-driven site is concerned, the feed is the exact same thing as having player upload clients pointed at your site. The big difference is that instead of an inefficient smattering of HTTP requests, EMDR feeds you a compressed, fast stream of market data. The actual contents are identical to what a client supporting Unified Uploader Interchange format would be sending to you directly.
You can't think of EMDR as a substitute for actually storing the data, it is only a firehose to feed your data store. If you need historical data, store the stream, or fill in your gaps from external services.
So think of it as a substitute for needing to have uploaders pointed specifically at you. Additionally, it's a central place that the players can point their uploaders at, where the greater community of market sites can get to it. The current reality is that people are forced to solicit their users to point uploaders at their site, and data is supplemented by EVE Central's SMTP feed. If we combined more of our data, we'll all be better off.
|

Vaerah Vahrokha
Vahrokh Consulting
576
|
Posted - 2012.04.16 08:41:00 -
[16] - Quote
Ilyk Halibut wrote:Vaerah, I think you may be missing the primary usage case for EMDR.
I don't miss it, I actually used a similar service with Infinity Futures (a futures broker).
What you miss is that your service at time = 0 has value only in the technical achievement point of view and its finance POV value will slowly increase as the connected 3rd party websites will store more and more of the data.
But if you start with zero history data, it'll take months before the stored data is of good and / or statistical use.
If you are just after the technology per se, then ok. Auditing | Collateral holding and insurance | Consulting | PLEX for Good Charity
Twitter channel |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.16 13:48:00 -
[17] - Quote
Vaerah Vahrokha wrote: But if you start with zero history data, it'll take months before the stored data is of good and / or statistical use.
Again, EMDR is a replacement for having uploaders pointed at your site directly. It is for market sites to get their users pointed at a central place in order to combine incoming data feeds. Instead of X player's uploads just going to EVE Central or EVE Marketeer, their uploads go to everyone. That is the point, not historical data.
If you need historical data and you're not storing any of your own, EMDR is not for you. There is an entry in the FAQ above that says as much. EMDR is more appropriate for the sites that store the feed. For sites that are just getting started out, I recommend connecting to EMDR, and backfilling data from EVE Central, EVE Marketeer, and EVE Market data as needed.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.16 13:53:00 -
[18] - Quote
LifeHatesMe wrote: agree with Vaerah, without historical data this does not seem much different than being apart of the unified data uploader tool.
That's just the thing, you should be thinking of it as a uploader tool :) That's the point! It's an uploader firehose that anyone can use, instead of just one site.
LifeHatesMe wrote: Specifically because it introduces a different point of failure where a developer (like me) does not necessarily need a feed as much as snapshot of transaction history for the market.
Since you are currently dependent on other sites for your data, it actually reduces failure points. EMDR is highly distributed, and has no single point of failure. In fact, you can connect to multiple Relay nodes to protect yourself against one of them going down. You have no such flexibility with any of the other real-time means of getting market data (EVE Central SMTP and having uploader clients pointed at you).
The best way to think of EMDR is as an upload tool that combines data from all over the place for you. If you don't want/need real-time data, or don't want to store said data, it is not for you. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
4
|
Posted - 2012.04.16 16:04:00 -
[19] - Quote
Hi, I have been playing around with emdr over the weekend, and I like the idea.
I do however have some questions/remarks.
In an ideal world, everyone would upload only to emdr, and not to any of the market data sites. The sites would all get their data from emdr and would not have to supply any data to emdr.
Unfortunately, we do not live in an ideal world, so the situation will be something like this:
Users will upload to (multiple) market data sites and emdr, and market data sites will supply data to emdr (like eve-central is doing now).
Now consider the following situation, a user is uploading to a total of 4 endpoints: eve-central, eve-marketeer, emdr and eve-addicts. Eve-central, eve-marketeer and eve addicts all push the uploads they are getting to emdr. Lets say they are smart and donGÇÖt push anything they get from emdr back into the relay system.
Eve-central, eve-marketeer and eve addicts all also subscribe to emdr.
Now the user uploads data for item X, I get it directly, and I get it an additional 3 times from emdr (once from the direct user upload to emdr and twice from the 2 other sites).
Currently there is no way for me to see that I have already received that data directly. So I have to accept and process all copies I get from emdr.
This can be resolved, but it requires a change in the json layout. If the uploading client software sends its destinations, for instance the urls itGÇÖs uploading to, then I as an endpoint can see if the data was already sent to me directly, and just discard it if it comes in again via emdr.
For example: GÇ£destinationsGÇ¥ : [ {GÇ£urlGÇ¥:GÇ¥http://eve.addicts.nl/api/upload.phpGÇ¥} {GÇ£urlGÇ¥:GÇ¥http://www.evemarketeer.com/api/uploadGÇ¥} {GÇ£urlGÇ¥:GÇ¥http://master.eve-emdr.com/upload/eve_marketeer/GÇ¥} {GÇ£urlGÇ¥:GÇ¥http://eve-central.com/datainput.py/inputdataGÇ¥} ]
Destinations should not be deleted, only added to by intermediate sites if they upload it somewhere else. If I would see that emdr is in the list, I donGÇÖt have to push it into the relay system, if itGÇÖs not I can decide to upload it after adding the url for emdr to the list.
This would ofcource only work for uploaders using the unified format.
So, the bottom line, I like the idea, but at the moment IGÇÖm a bit concerned about all the duplicate data that I will have to process if I scubscribe to the stream. Without a way to tell if you have already seen the data before, it will require a significant amount of processing to work through all the duplicates.
Snarf Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.16 16:13:00 -
[20] - Quote
I think the destinations field makes a lot of sense. I'll have to dig up the thread for discussing the spec and point them here. I help out some with the Unified Uploader client, so I could submit a pull request for this if it sounds good to everyone.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
4
|
Posted - 2012.04.16 16:14:00 -
[21] - Quote
Also, users like statistics. With emdr there is no way to identify users, so no way to count their uploads. For my site there is just a list of the top uploaders, but for eve-marketeer there is a point system attached to the number of uploads that let you do extra stuff on the site.
No idea how to fix that... personally i don't care about stats, but i do catch myself looking at the ranking every now and then. Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.16 19:08:00 -
[22] - Quote
Snarf Aldes wrote:Also, users like statistics. With emdr there is no way to identify users, so no way to count their uploads. For my site there is just a list of the top uploaders, but for eve-marketeer there is a point system attached to the number of uploads that let you do extra stuff on the site.
No idea how to fix that... personally i don't care about stats, but i do catch myself looking at the ranking every now and then.
EMDR preserves the whole Unified Uploader message. Unified Uploader Interchange format supports uploaderKeys, which are used for this exact purpose. It's a matter of the upload clients using it.
But we are prepared, and I wholeheartedly agree that we need to preserve and relay such information to you. I'd love to see a breakdown of which site has the most people providing data to EMDR, as well. I've got some preliminary tracking in, but we're currently only being constantly fed by EVE Central. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
4
|
Posted - 2012.04.16 19:48:00 -
[23] - Quote
How does eve-central upload data?
When i was looking what was coming out of emdr, i basically saw only the data that i was uploading to you myself. Until at some point i got a burst of some MB's in data. Since i was looking at it on stdout i decided to kill the script :)
Looks like they don't send it through as soon as they get it, but batch it and send it at a regular interval?
Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.17 03:32:00 -
[24] - Quote
We're subscribed to their SMTP-based batch service. This is currently the only option for real-time data feeds out there, which is one of the reasons EMDR came into being. The emails with market data come from EVE Central every 1-3 minutes, depending on some variability on their side. On our end, we parse the email and feed it back into EMDR.
This is probably why you saw the huge burst, and only the stuff you were uploading. I'm in discussion with some other market sites to get them to relay their data as well, but these things take time, especially when we're talking about a new service.
For those with market-driven sites, I'd love to help make it easy for you to share data! Please EVE Mail me and I'll work with you on it. It's very simple, and we all win. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
164
|
Posted - 2012.04.17 22:34:00 -
[25] - Quote
EMDR Client in C#. Please add in "Using Data from the EMDR network" page. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.18 01:17:00 -
[26] - Quote
Much appreciated! This has been added. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Nomad I
University of Caille Gallente Federation
59
|
Posted - 2012.04.18 09:29:00 -
[27] - Quote
The idea to gather several feeds into one network is awesome.
1 question: Do you want to gather data for the network or will the markeddata sites push data into this network? The 2nd approach would be like a torrent network for data. |

Snarf Aldes
University of Caille Gallente Federation
5
|
Posted - 2012.04.18 15:33:00 -
[28] - Quote
Nevermind, i'm an idiot.... Typo's are not my friend..  Creator of Eve Addicts |

Desmont McCallock
164
|
Posted - 2012.04.18 15:45:00 -
[29] - Quote
EMDR Client in VB. Please also add in "Using Data from the EMDR network" page. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.18 15:50:00 -
[30] - Quote
Nomad I wrote:The idea to gather several feeds into one network is awesome.
1 question: Do you want to gather data for the network or will the markeddata sites push data into this network? The 2nd approach would be like a torrent network for data.
I'll be trying to convince market sites to relay their uploads to EMDR. Right now, the project is very young, so it's somewhat of an uphill battle. I welcome all the help I can get convincing the players that be that it's worth their time.
Ideally, each market site would re-POST every unique upload that comes to them via a player to EMDR, or hook into the top end of the feed with ZeroMQ and do it in real-time. The first method is the simplest, the second one is the most efficient. I've been in contact with EVE Marketdata and EVE Marketeer, so let's hope they'll come around! EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.18 18:44:00 -
[31] - Quote
Thanks again, this has been added. We've got quite a few of the major languages covered.
Anyone up for Java? Scala? Anything on here http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
5
|
Posted - 2012.04.18 20:16:00 -
[32] - Quote
Ilyk Halibut wrote:Nomad I wrote:The idea to gather several feeds into one network is awesome.
1 question: Do you want to gather data for the network or will the markeddata sites push data into this network? The 2nd approach would be like a torrent network for data. I'll be trying to convince market sites to relay their uploads to EMDR. Right now, the project is very young, so it's somewhat of an uphill battle. I welcome all the help I can get convincing the players that be that it's worth their time. Ideally, each market site would re-POST every unique upload that comes to them via a player to EMDR, or hook into the top end of the feed with ZeroMQ and do it in real-time. The first method is the simplest, the second one is the most efficient. I've been in contact with EVE Marketdata and EVE Marketeer, so let's hope they'll come around! Do you have an example of how to accomplish it with ZMQ (in PHP if possible)?
Eve Addicts is now integrating the data recieved from EMDR. I have an uploader ready, just need to tweak it a little, so soon I will be forwarding all direct uploads. Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.18 20:33:00 -
[33] - Quote
Snarf Aldes wrote: Do you have an example of how to accomplish it with ZMQ (in PHP if possible)?
I don't just yet, and your data would need to be in Unified Uploader format already (instead of EMK). That means converting everything you've got coming in to Unified format, which is kind of tedious. I didn't think about this before mentioning the ZMQ possibility, which was foolish.
There's enough of an efficiency win with ZMQ to where I probably do need to make a ZMQ gateway to complement the HTTP gateway. This would do all of the conversion so you don't have to. I can put this on the list of things to work on and let you know when I have something to show. This may be a post-launch task, though, as I've got a good bit more to do leading up to "1.0".
For now we'll probably just need to go the route of re-POST'ing to the HTTP gateway. In 99% of the cases, it should be as easy as taking the request you received and just relaying it to EMDR's HTTP gateway. If there's anything I can do to provide additional details on this, don't hesitate to ask. Here is what the clients get for uploader instructions, your relay would basically work the same way:
http://www.eve-emdr.com/en/latest/uploading.html
Snarf Aldes wrote: Eve Addicts is now integrating the data recieved from EMDR. I have an uploader ready, just need to tweak it a little, so soon I will be forwarding all direct uploads.
Awesome on both accounts. Let me know if you have any questions that I can help with. I definitely want to make relaying the data as easy as possible. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.18 22:47:00 -
[34] - Quote
For the other Pythonistas, I've got an example of a Python greenlet consumer here:
https://github.com/gtaylor/EVE-Market-Data-Relay/tree/master/examples/python/greenlet_consumer
This is more advanced than the consumer in the docs, as it handles each incoming message in a greenlet. This allows your consumer to handle large amounts of market data without blocking while saving to the DB backend of your choice. You can still choke your consumer with CPU-intensive tasks in the worker, so watch that.
I've created an examples dir in the repo where people are welcome to contribute code in their choice of language for whatever purpose. If you've got something that you'd like to contribute, let me know and I'll work it in. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Dragonaire
Corax. The Big Dirty
39
|
Posted - 2012.04.18 23:13:00 -
[35] - Quote
Just thought someone here might also be interested in some code I started on for the unified format stuff done in PHP. https://sourceforge.net/projects/evemarketfeed/ Finds camping stations from the inside much easier. Designer of Yapeal for Eve API. Check out the Yapeal PHP API library thread for more information. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.18 23:26:00 -
[36] - Quote
Awesome, we'll have to find somewhere for stuff like this in the EMDR documentation. Your timing is perfect, in that I just put this together:
https://github.com/gtaylor/EVE-Market-Data-Relay/tree/master/examples
The basic gist is that I'd love to collect code examples of EMDR-related things in various languages. If you write anything neat using EMDR, we can toss it in examples for others to re-use. Past a certain size (like with Dragonaire's evemarketfeed), it makes sense to have separate projects, but for anything smaller and self-contained, send a pull request or post to our issue tracker.
Are there any other resources people would like to mention as potentially useful for use with EMDR? Perhaps I can cull some of the stuff from EVE-Dev that would be appropriate. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.18 23:31:00 -
[37] - Quote
I have also added some hints for those with market sites who wish to share their data over EMDR:
http://www.eve-emdr.com/en/latest/uploading.html#syndicating-your-market-site-s-upload-data-to-emdr
The easiest route is to just get in touch with me about running a gateway on your infrastructure in place of your current upload processing code, then subscribe to the EMDR feed. Since EMDR is still young, I understand that most people probably won't be comfortable with this just yet, so I do also briefly outline the steps needed to re-POST the data to our HTTP gateway.
If anyone ends up syndicating data, let us know of any trials and tribulations you run into. Code samples are also appreciated. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Rosaki
Blackman Industries
1
|
Posted - 2012.04.19 05:49:00 -
[38] - Quote
So, I bastardized a three.js example to make a WebGL powered EMDR upload activity map
http://map.eve-emdr.com
Systems will light up whenever market data is reported. Upload some data and watch your region flash, or just wait for the eve-central data to spam. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.19 05:53:00 -
[39] - Quote
Rosaki wrote:So, I bastardized a three.js example to make a WebGL powered EMDR upload activity map http://map.eve-emdr.comSystems will light up whenever market data is reported. Upload some data and watch your region flash, or just wait for the eve-central data to spam.
Looks awesome. Apologies for there being such large gaps between data bursts. We currently only have EVE Central's SMTP service feeding in 24/7, and that bursts every 1-5 minutes. I'll try to start pulling data from EVE Marketeer and EVE Market Data's API soon to get it lit up. If anyone else wants to syndicate uploads, shoot me a mail! EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
5
|
Posted - 2012.04.19 07:11:00 -
[40] - Quote
I am already converting to unified format, so that's not a problem. I do however see some significant overhead with posting it to EMDR. If i can do it with ZMQ, that should be more efficient.
I had to disable the EMDR integration for now,i'm getting weird data, probably because I made a mistake somewhere with the parsing. I have to look into that.
Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.19 14:18:00 -
[41] - Quote
Snarf Aldes wrote:I am already converting to unified format, so that's not a problem. I do however see some significant overhead with posting it to EMDR. If i can do it with ZMQ, that should be more efficient.
I had to disable the EMDR integration for now,i'm getting weird data, probably because I made a mistake somewhere with the parsing. I have to look into that.
EDIT: I have looked at my code, but can't find anything wrong with it. I haven't saved the raw json i'm getting from emdr, so i can't look at that. I am seeing mixed up data, like someone tried to upload 2 rowsets in a single message, but instead of making 2 rowsets the rows of both items got merged.
I'd suggest one of the two solutions:
- We can replace your current upload processor script with a standard EMDR Gateway. I'd need to add a config flag to allow you to change uploader paths to mirror your current one, but that's not a huge deal.This would accept HTTP uploads, and relay them to EMDR's brokers.
- You can send me the JSON that you are relaying so I can put it through its paces in my test environment.
The first one requires some setup work, but is the most likely to work indefinitely. My aim is to eventually make this as easy as possible, so let me know what I can do. Walking you through finishing your uploader relay off with ZeroMQ isn't a big deal, as long as we're sure you're passing in good data. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
5
|
Posted - 2012.04.19 15:36:00 -
[42] - Quote
Someone is sending malformed json data into the system. Their data has merged the rows section of a bunch of items under the typeID of a single item. I have put the data online: bad_json.txt The first item, typeID 3396 ('Industrial Construction' skillbook) has only 20 sell order and 11 buy orders in The Forge at the moment, the json contains 456 orders total.
Creator of Eve Addicts |

Desmont McCallock
164
|
Posted - 2012.04.19 16:03:00 -
[43] - Quote
Why is the 'generator' unknown? Who is feeding data without stating who he is? I would suggest those to be discarded. |

Desmont McCallock
164
|
Posted - 2012.04.19 16:13:00 -
[44] - Quote
EMDR Client in Java. Please also add in "Using Data from the EMDR network" page.
Don't expect me to write the client in 'Scala' too. I have enough with all these programming languages I already know. Although I'll try to write it in C++ but I'm not promising anything. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.19 16:20:00 -
[45] - Quote
Snarf Aldes wrote:Someone is sending malformed json data into the system. Their data has merged the rows section of a bunch of items under the typeID of a single item. I have put the data online: bad_json.txtThe first item, typeID 3396 ('Industrial Construction' skillbook) has only 20 sell order and 11 buy orders in The Forge at the moment, the json contains 456 orders total.
Yuck. I'll take a look at this as soon as I'm done at the day job.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.19 16:20:00 -
[46] - Quote
Desmont McCallock wrote:EMDR Client in Java. Please also add in " Using Data from the EMDR network" page. Don't expect me to write the client in 'Scala' too. I have enough with all these programming languages I already know. Although I'll try to write it in C++ but I'm not promising anything.
Thanks! I'll get this added to the docs after work. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.19 19:36:00 -
[47] - Quote
Snarf Aldes wrote:Someone is sending malformed json data into the system. Their data has merged the rows section of a bunch of items under the typeID of a single item. I have put the data online: bad_json.txtThe first item, typeID 3396 ('Industrial Construction' skillbook) has only 20 sell order and 11 buy orders in The Forge at the moment, the json contains 456 orders total.
There's actually good news on this front. This was a bug that I introduced with a late-night coding session, rather than something malicious: https://github.com/gtaylor/EVE-Market-Data-Relay/commit/62b49b293062d14999cb97ecf3127afb7d80e8ff#L0L33
I need another set of eyes on the data to make sure this fix is good. I'll write proper unit tests soon, had to get this in quickly between tasks at work.
Sorry for the hassle. Thanks for noticing this and letting me know, I greatly appreciate the help in testing this out. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.19 22:26:00 -
[48] - Quote
Added Desmont's Java client example, and godo's Perl example. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.20 04:17:00 -
[49] - Quote
We are now pulling recent data from EVE Market Data. Could definitely use some extra eyes on the feed to make sure the data coming through is good. It's orders only for now, looks like there's a bug in their history querying code. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
5
|
Posted - 2012.04.20 05:46:00 -
[50] - Quote
Ilyk Halibut wrote:Snarf Aldes wrote:Someone is sending malformed json data into the system. Their data has merged the rows section of a bunch of items under the typeID of a single item. I have put the data online: bad_json.txtThe first item, typeID 3396 ('Industrial Construction' skillbook) has only 20 sell order and 11 buy orders in The Forge at the moment, the json contains 456 orders total. There's actually good news on this front. This was a bug that I introduced with a late-night coding session, rather than something malicious: https://github.com/gtaylor/EVE-Market-Data-Relay/commit/62b49b293062d14999cb97ecf3127afb7d80e8ff#L0L33I need another set of eyes on the data to make sure this fix is good. I'll write proper unit tests soon, had to get this in quickly between tasks at work. Sorry for the hassle. Thanks for noticing this and letting me know, I greatly appreciate the help in testing this out. Great that it is fixed! I'll enable the EMDR stream again for Eve Addicts.
Creator of Eve Addicts |

Snarf Aldes
University of Caille Gallente Federation
5
|
Posted - 2012.04.20 06:44:00 -
[51] - Quote
Hmm, there is another problem now. A single rowset is split in 2 rowsets, one for buy orders, and one for sell orders. This is not according to the specs. I expect to see all data (both buy and sell orders) in the same rowset.
The problem with this is, that when i process the data, i pull the uploads from the db and ordered from new to old. Then in process them in order. If i find a duplicate for an item later in the set, i discard it because a newer version was already processed.
With the split data, only half will get processed. Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.20 13:53:00 -
[52] - Quote
Yeah, I think I'm going to need to pull, queue, and re-combine data from their API after some more shuffling to get it mixed together nicely. As you noted, the orders are separated.
In the meantime, ordering by the generatedAt attribs may help, as that is when the data came to be. That may be a more reliable means than what order it came into your uploader.
I'll fix the uploadKeys, too. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.20 14:25:00 -
[53] - Quote
uploadKeys issue has been corrected to match more closely to the spec. Here are the two coming in from the feeder services (EMD and EC):
EMD feeder {'name': 'EVE Market Data', 'key': 'EMDR'},
EC feeder {'name': 'EVE Central', 'key': 'EMDR'},
I'd like some feedback on these, as the spec is kind of vague what the key is meant for. Is this acceptable for everyone?
Also, generator is going to be off for direct uploads until I have more time tonight. You may see this in the case of a direct upload:
{'name': 'Unknown', 'version': 'Unknown'}
If you see that, it's almost certainly an uploader. I'll get the correct information plugged in tonight, I just have to read up on EMK's upload spec again. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
164
|
Posted - 2012.04.20 15:30:00 -
[54] - Quote
I believe "key' is to be used to identify the 'uploader' (in giving credits for view in the stats pages). For example, if you use a site's market scanner with the igb to upload orders, that key is an ID generated by the site bind to that character (and the site knows where to give credits to). In case of an 'uploader' the key is bind to the app.
At least that's how I understand it.
I strongly believe that the 'key' should remain an integral and the use of strings should be avoided. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.20 15:33:00 -
[55] - Quote
I can get that changed later tonight, though, wouldn't it be up to the site who generated the key to decide whether to use straight numeric, or alphanumeric (hash?) keys? I could see value in not restricting to numerals, though, this is more of a decision for the specification thread, I think, as the current spec say: "This can be a simple ID number, or some kind of message digest" EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
164
|
Posted - 2012.04.20 15:39:00 -
[56] - Quote
Here is what EMDR is currently generating:
Quote:"uploadKeys": [ { "origin": "EVE Market Data" } ], "generator": { "version": "0.1", "name": "EMDR EVE Market Data API Feeder" }, Which I believe doesn't correspond to the specs.
The correct format should be
Quote:"uploadKeys": [ { "name": "EVE Market Data", "key" : "an id that you use internally" } ], "generator": { "name": "EVE Market Data Relay", "version": "the version of production code" },
Quote:I can get that changed later tonight, though, wouldn't it be up to the site who generated the key to decide whether to use straight numeric, or alphanumeric (hash?) keys? I could see value in not restricting to numerals, though, this is more of a decision for the specification thread, I think, as the current spec say: "This can be a simple ID number, or some kind of message digest" Edit: Hash could also do, just not use descriptive strings. I know it says so but my opinion is not to use it for descriptive messages. |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.20 17:00:00 -
[57] - Quote
Ilyk Halibut wrote:Yeah, I think I'm going to need to pull, queue, and re-combine data from their API after some more shuffling to get it mixed together nicely. As you noted, the orders are separated.
In the meantime, ordering by the generatedAt attribs may help, as that is when the data came to be. That may be a more reliable means than what order it came into your uploader.
I'll fix the uploadKeys, too. IMHO, this should be done by Eve Market Data, they should upload according to the spec. You can't correct the uploads of everyone who decides to ignore the specs... Creator of Eve Addicts |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.20 17:06:00 -
[58] - Quote
The whole uploadKey section is pointless. You can't use it for a point system since you can't tell if you already counted that specific piece of data via an other route... Like i said before, you need to know where the data was sent, so you can tell if you have already seen it or not. Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.20 17:07:00 -
[59] - Quote
With EMD, I'm actually looking at their API that shows the a list of recently updated orders/history, then querying for those items in the given regions. I then construct the payload to POST to EMDR, much like a player's uploader would. So I'm fully at fault for the silly grouping you're seeing.
I've got a fix in mind, so this will be resolved tonight, fo sho.
Also, a bug with EMD's API was fixed that will allow me to start syndicating history entries, instead of the current, just-orders stream. I'll also be getting an EVE Marketeer feeder set up, meaning we'll have syndicated data from all three sites. After that point, we'll focus on hammering out any remaining issues, then work on getting this thing distributed to other volunteers' machines. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.20 17:13:00 -
[60] - Quote
Snarf Aldes wrote:The whole uploadKey section is pointless. You can't use it for a point system since you can't tell if you already counted that specific piece of data via an other route... Like i said before, you need to know where the data was sent, so you can tell if you have already seen it or not.
This may eventually be something that we just have to add, and call it Unified Uploader Interchange+routing. I hate to diverge, but agree that it's a problem.
Unfortunately, for it to work, we'd also have to have the uploader clients follow suite. While I do plan on eventually writing a "pure" EMDR uploader client (for the sake of simplicity, and better cross-platform support), we're kind of in a rough spot without support from the rest of the people involved with the specifications.
Perhaps the need for such a thing will get more attention as we get EMDR fully deployed and market sites start using it. In the end, the market sites and uploader client developers have the most sway. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Dragonaire
Corax. The Big Dirty
39
|
Posted - 2012.04.20 17:19:00 -
[61] - Quote
key is a free text field but it was intended primarily to be used as a simple ID number or hash. It could also be used as public key and hash for private/public key system.
Make sure you have read the JSON spec (one page) as it's important to understand it. http://www.json.org/
As pointed out "name" and "key" but not "origin" is part of uploadKeys. I'm just guessing but it seems you aren't using any kind of JSON library which make generating it correctly much easier. In the actual JSON the spacing etc used in the examples don't exist that was done purely for easier understanding of the format for us poor humans  Finds camping stations from the inside much easier. Designer of Yapeal for Eve API. Check out the Yapeal PHP API library thread for more information. |

Desmont McCallock
164
|
Posted - 2012.04.20 17:37:00 -
[62] - Quote
Dragonaire wrote:In the actual JSON the spacing etc used in the examples don't exist that was done purely for easier understanding of the format for us poor humans  Yeah, I too realized that while I'm trying to code the correct format using .NET JSON serializer. Had to copy it to a notepad and add the spacing myself, in order to be sure that I had generated it in the correct format.
On another note, to all market sites owners, expect during the weekend testing of EVEMon's uploader. |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.20 17:39:00 -
[63] - Quote
Desmont McCallock wrote:
On another note, to all market sites owners, expect during the weekend testing of EVEMon's uploader.
Will you feed it to EMDR only or directly to the sites as well? Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.20 17:42:00 -
[64] - Quote
Desmont McCallock wrote:[ On another note, to all market sites owners, expect during the weekend testing of EVEMon's uploader. If you're testing, do feel free to point it at EMDR too. You won't **** anyone off too bad if you toss something badly formed in just yet, since EMDR is also in testing.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
164
|
Posted - 2012.04.20 17:55:00 -
[65] - Quote
First of, EVEMon is going to support only the unified format. Therefore only the sites that support the format can participate in testing. After all, afaik only EMDR has a gateway for the UF.
Edit: In order to answer to what might had been Snarf's question, EVEMon uploader will support preset and manually entered endpoints. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.21 03:39:00 -
[66] - Quote
In the interest of reducing complexity, I've simplified the upload instructions for clients down to a single URL:
http://upload.eve-emdr.com/upload/
I'll auto-detect the format and handle all of that boring jazz for you. This was motivated by some of you silly people trying to upload EMK format to the Unified endpoint. My fault for not making this smarter/easier from the beginning, though :) EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.21 06:25:00 -
[67] - Quote
Have you managed to fix the split data issue? If so, i can enable the stream again. Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.21 06:37:00 -
[68] - Quote
Snarf Aldes wrote:Have you managed to fix the split data issue? If so, i can enable the stream again. I'm not positive on what action you wanted me to take, but check it out. I did change how EMD is feeding in pretty substantially. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.21 07:07:00 -
[69] - Quote
Ilyk Halibut wrote:Snarf Aldes wrote:Have you managed to fix the split data issue? If so, i can enable the stream again. I'm not positive on what action you wanted me to take, but check it out. I did change how EMD is feeding in pretty substantially. You treat buy and sell orders of the same item as separate uploads, although they belong together. Now you have one rowset of typeID xxx in region yyy for sell orders, and a second one of the same item + region for buy orders.
I figure that is because that is the way you pull it of Eve Market Data's API, but that would not be the way it was uploaded to them, or how it should be distributed again.
It would be better if EMD could be persuaded to forward their uploads the moment they get them. There should be no need for you to pull data from any api, although I understand that you want to supply as much data to EMDR as possible. Creator of Eve Addicts |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.21 07:12:00 -
[70] - Quote
I am now forwarding all uploads from Eve Addicts to EMDR. Are you accepting/processing history as well? I didn't receive any history uploads posted through Eve Addicts back via EMDR (using UF). Creator of Eve Addicts |

Desmont McCallock
164
|
Posted - 2012.04.21 08:23:00 -
[71] - Quote
Ilyk Halibut wrote:In the interest of reducing complexity, I've simplified the upload instructions for clients down to a single URL: http://upload.eve-emdr.com/upload/I'll auto-detect the format and handle all of that boring jazz for you. This was motivated by some of you silly people trying to upload EMK format to the Unified endpoint. My fault for not making this smarter/easier from the beginning, though :) All others should follow your example. |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.21 10:02:00 -
[72] - Quote
Since Callean put the source of the unified uploader online, it should be possible to write a unified upload part for the uploader. I looked at the code, but i'm a noob with python...
Anyway, here is a link to the code uploader source
If any of you python experts have the time to look at it...  Creator of Eve Addicts |

Desmont McCallock
164
|
Posted - 2012.04.21 11:41:00 -
[73] - Quote
So according to EMDR documentation which is the correct upload gateway url, cause docs also mentions http://master.eve-emdr.com/upload/ (note the 'master)? |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.21 16:32:00 -
[74] - Quote
Whoops, I changed one reference, but not the other. This has been corrected to show the upload.eve-emdr.com hostname. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.21 16:34:00 -
[75] - Quote
Snarf Aldes wrote:I am now forwarding all uploads from Eve Addicts to EMDR. Are you accepting/processing history as well? I didn't receive any history uploads posted through Eve Addicts back via EMDR (using UF). History uploads are a bit less common, but I think we only get them from EVE Marketdata and direct uploads. There are not always history uploads to report, so they will be somewhat far and few between for a while. I'll be adding EVE Marketeer this weekend, which may improve volume somewhat.
If you make a point of watching and still see no history uploads at all, let me know and I'll figure out what's wrong. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.21 16:36:00 -
[76] - Quote
Snarf Aldes wrote: You treat buy and sell orders of the same item as separate uploads, although they belong together. Now you have one rowset of typeID xxx in region yyy for sell orders, and a second one of the same item + region for buy orders.
I figure that is because that is the way you pull it of Eve Market Data's API, but that would not be the way it was uploaded to them, or how it should be distributed again.
The data is grouped in EMD, but I thought I had corrected this. Apparently not, so I'll go back to the drawing board and come up with something.
Snarf Aldes wrote: It would be better if EMD could be persuaded to forward their uploads the moment they get them. There should be no need for you to pull data from any api, although I understand that you want to supply as much data to EMDR as possible.
It would indeed be a much better way to do things. I've touched bases with all of the major market sites, and have received responses ranging from "interesting" to "we'll get this done eventually". If you know any of them personally, perhaps share the fact that you're interested in such a thing to help them see the demand for this kind of thing. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.21 23:44:00 -
[77] - Quote
I'm pondering an architectural change, wanted some second opinions.
Currently, this is how things work, assuming we have two mirrored sets of daemons on two different machines:
http://www.eve-emdr.com/en/latest/overview.html#high-availability-through-shared-burden
This is working wonderfully at scale, we've got very high capacity, and processor usage barely peaks 3% on a low end Linode VM. The problem is, the gateway is a dumb relay. It does no parsing of the payload, aside from making sure a few relevant bits are there.
I'm noticing some mal-formed uploads, which get filtered out at the processor level. The problem is, the uploader has no idea that their data is bad. So what I'm considering is this:
- Get rid of the broker and processor daemons.
- Gateways take on the processing duties, and give the uploader feedback if their data sucks.
- Gateways send (PUB) the data to all Announcers (SUB).
Benefits of this approach:
- Getting constructive feedback to the users about bad data is possible this way.
- We remove some moving pieces.
- Less code.
- Less moving parts.
The downsides to this approach:
- Gateways will lose some throughput, since they'll be doing more.
- I'll need to look for gateway volunteers, instead of processor volunteers. This is worrisome only because the gateways sit behind round-robin DNS. If one of the gateways goes down and we don't automatically remove them from the rotation, a percentage of uploads will hang or never arrive. We'd need to write something to status check the gateways, and remove them from the round-robin DNS rotation if they become unavailable.
I'm leaning towards making the jump and doing this. Does anyone have anything to add? EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.22 00:27:00 -
[78] - Quote
The lack of timezone offsets has been corrected. All datetimes previously looked like this:
2012-04-21T20:25:55
They now look like this:
2012-04-21T20:25:55+00:00 EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.22 04:44:00 -
[79] - Quote
Today's round of changes
- You may now gzip-compress Unified Uploader Interchange POST bodies, as long as you set the 'Content-Encoding: gzip' header. This saves a ton of bandwidth, so do it! For .NET users, you may run into some issues, but Desmont is working on a way to do this.
- I have eliminated processors and brokers from the stack. This simplifies things, and lets me give uploaders direct feedback about whether their data sucks or not. Previously, it was too hard to tell if you messed up or not
- I will now return HTTP 400 error codes if you pass in data that sucks, along with a hopefully-helpful error message. HTTP 500's may be seen in the rare case where your data is so malformed that the gateway freaks out and doesn't know what to do with it
- I went postal on the various date parsing/encoding issues, and finally got everything pretty consistent. We're now more permissive than we should be as far as what kind of date strings we can parse, I'm not sure whether that's good or not :
We are now receiving data from the following sources
- EVE Central SMTP feed (orders only
- EVE Addicts (all direct uploads
- EVE Marketdata (orders+history via their recently updated API
The following data sources are in the works
- EVE Marketeer (all direct uploads, Callahan says sometime this weekend
- EVEMon Uploader (we'll be in default uploader endpoint, early June
And finally, a note on erroneous uploaders. There are quite a few who are uploading stuff that we can't use due to it being improperly formatted. Please, everyone, check your re-uploaders or syndicaters and make sure that your log files don't show a ton of errors now. Here are a list of a few EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.22 10:42:00 -
[80] - Quote
Question.. Why are you reformatting all the incoming data? I just noticed that the JSON i'm uploading (single rowset per typeID) is transformed into the split version with 2 rowsets for the same typeID. Here is an example split_json.txt The top is what i am sending, the bottom is what is returned through EMDR.
I really need it to be in the top format, i cannot use the bottom format  Creator of Eve Addicts |

Miilla
Hulkageddon Orphanage
234
|
Posted - 2012.04.22 11:13:00 -
[81] - Quote
So it gets its source market data from "bot" account toons that sit in every region and export the market data to your relay?
How is that not Botting?
CCP Don't give out real time market data to the REST API. So using BOT accounts is the only way to do it, in "near" real time, or depend on current real players to upload data, then you cannot trust that data.
If you are dependant on your data from external sites, that depend on players uploads, (or their bot accounts) then you are using second hand data again. It brings up the photocopy of a photocopy problem, data accuracy deterioration. HOw can we trust your data?
All you are doing is aggregating DIRTY INACCURATE market data.
The only real way to get anything "near" real time is to use account bot toons in every region and export every few minutes (or every 2 market refresh - automated - clicks) to your aggregator.
If you are not botting, you are pushing out second hand inaccurate dirty data as "fresh".
Another issue is, do you have an aggregation (page/data scraping) agreement with the other market data sites out there? What happens when they block you for scraping their pages? After all you are removing their eyeballs from their page, pushing up their hosting bill by more traffic and generally being a prick with them without an agreement. Even worse, If i was one of those sources you are scraping your data from, I would POLLUTE / CONTAMINATE the data just for your scraping bot. How can we TRUST your data isn't DIRTY by the source? This happens very often to hide from webspiders, in fact we can just keep generating random data for you TO INFINITY and keep your agregator busy, with such a tiny little script. Think tarpit :)
There should only be one source, from the CCP market, not third parties. |

Desmont McCallock
164
|
Posted - 2012.04.22 11:57:00 -
[82] - Quote
Snarf Aldes wrote:Question.. Why are you reformatting all the incoming data? I just noticed that the JSON i'm uploading (single rowset per typeID) is transformed into the split version with 2 rowsets for the same typeID. Here is an example split_json.txtThe top is what i am sending, the bottom is what is returned through EMDR. I really need it to be in the top format, i cannot use the bottom format  "uploadKeys":[{"name":"Eve Addicts","key":"relay"}], should be "uploadKeys":[{"name":"EVE Market Data Relay","key":"EMDR"}], as uploadKeys state where you are uploading. |

Desmont McCallock
164
|
Posted - 2012.04.22 12:01:00 -
[83] - Quote
@Milla You are a known troller. Can you go troll somewhere else, please. |

Miilla
Hulkageddon Orphanage
234
|
Posted - 2012.04.22 12:02:00 -
[84] - Quote
Desmont McCallock wrote:@Milla You are a known troller. Can you go troll somewhere else, please.
I will do my bit to pollute his market data, if he allows uploads :)
It will help me move some items at high profit :) |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.22 12:24:00 -
[85] - Quote
Desmont McCallock wrote:Snarf Aldes wrote:Question.. Why are you reformatting all the incoming data? I just noticed that the JSON i'm uploading (single rowset per typeID) is transformed into the split version with 2 rowsets for the same typeID. Here is an example split_json.txtThe top is what i am sending, the bottom is what is returned through EMDR. I really need it to be in the top format, i cannot use the bottom format  "uploadKeys":[{"name":"Eve Addicts","key":"relay"}], should be "uploadKeys":[{"name":"EVE Market Data Relay","key":"EMDR"}], as uploadKeys state where you are uploading. We can agree to use it that way, that would solve the duplicate insertion problem :) But.. i don't think that is the intended purpose of uploadKeys. What the actual purpose of uploadKeys is is unclear to me. Creator of Eve Addicts |

Desmont McCallock
164
|
Posted - 2012.04.22 13:10:00 -
[86] - Quote
From spec docs:Quote: uploadKeys; array; An array of objects containing per endpoint upload keys Endpoint is the entity to where you are uploading.
For example, once EVEMon Market Unified Uploader go live I will have to obtain an upload key from you so you can identify it and give credits to it. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.22 18:50:00 -
[87] - Quote
Snarf Aldes wrote:Question.. Why are you reformatting all the incoming data? I just noticed that the JSON i'm uploading (single rowset per typeID) is transformed into the split version with 2 rowsets for the same typeID. Here is an example split_json.txtThe top is what i am sending, the bottom is what is returned through EMDR. I really need it to be in the top format, i cannot use the bottom format  Sorry about this, I hunted it down and corrected this just now. It won't be a problem anymore. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.22 18:54:00 -
[88] - Quote
Snarf Aldes wrote: We can agree to use it that way, that would solve the duplicate insertion problem :) But.. i don't think that is the intended purpose of uploadKeys. What the actual purpose of uploadKeys is is unclear to me.
Since EMDR has no notion of an upload key, I just made that up from my scraper processes. I'm not actually modifying data, there just is no such thing as an upload key when I'm pulling the data from EC/EMD's feeds/API, and figured it might be useful to someone to see it in that format.
We probably do need to keep experimenting with solutions to the upload loop problem. I don't think the discussion is closed yet, and I'm willing to go outside the spec if need be. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Wind Jammer
Molden Heath Software Company
13
|
Posted - 2012.04.22 22:07:00 -
[89] - Quote
Nice work Ilyk. Your site looks good, and the architecture seems well thought through.
It's probably not ideal for my needs because I need an aggregator. I don't want to have to calculate my own averages or identify or filter out manipulation attempts. And I'm happy collecting new data once a day. But good luck all the same. 
[url]http://eveproductionmixer.appspot.com[/url]
|

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.22 23:45:00 -
[90] - Quote
Wind Jammer wrote:Nice work Ilyk. Your site looks good, and the architecture seems well thought through. It's probably not ideal for my needs because I need an aggregator. I don't want to have to calculate my own averages or identify or filter out manipulation attempts. And I'm happy collecting new data once a day. But good luck all the same.  Thanks! I guess the good thing is that you'll still benefit from it indirectly, in that wherever you pull your averages from will have better data.
Best of luck with your project. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
6
|
Posted - 2012.04.23 10:19:00 -
[91] - Quote
Ilyk Halibut wrote:Snarf Aldes wrote:Question.. Why are you reformatting all the incoming data? I just noticed that the JSON i'm uploading (single rowset per typeID) is transformed into the split version with 2 rowsets for the same typeID. Here is an example split_json.txtThe top is what i am sending, the bottom is what is returned through EMDR. I really need it to be in the top format, i cannot use the bottom format  Sorry about this, I hunted it down and corrected this just now. It won't be a problem anymore. Cool, I switched the EMDR stream on again. I am seeing duplicates for every entry now, but that could be because the same data is originating from different sources. Creator of Eve Addicts |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.23 14:10:00 -
[92] - Quote
Snarf Aldes wrote: Cool, I switched the EMDR stream on again. I am seeing duplicates for every entry now, but that could be because the same data is originating from different sources.
Yeah, you should see up to three duplicates, since the Unified Uploader uploads to EVE Central, EVE Marketeer, and EVE Marketdata. We just started getting redirected downloads from EVE Marketeer, so this is more noticeable, since we cover all three.
This bothered me initially, but it does allow consumers to cross-check data to make sure some dufus like Milla isn't uploading bad data. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.24 04:21:00 -
[93] - Quote
Pretty tame day today:
- Made the Uploading documentation more specific, in that Contribtastic for Mac is the only client I know that supports Unified Uploader right now. There is upcoming support for others, do let me know if I've missed any that currently support it.
- Fixed a bug with uploadKeys being a dict instead of a list for EMK uploads.
- Improved validation to prevent issues with uploadKeys.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.25 04:27:00 -
[94] - Quote
If all continues to run quietly, I'll probably aim to tag "1.0" this weekend. I'd love some more eyes on the feed to make extra sure that everything is in order leading up to then. After that point, I'll be looking for people willing to volunteer additional gateways and/or relays. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
164
|
Posted - 2012.04.25 08:42:00 -
[95] - Quote
I build a script into the EMDR client to detect any bad formatted UF message. Until now every message comes in correct format. |

Desmont McCallock
165
|
Posted - 2012.04.25 15:33:00 -
[96] - Quote
https://forums.eveonline.com/default.aspx?g=posts&m=1190235#post1190235 https://forums.eveonline.com/default.aspx?g=posts&m=1190239#post1190239 |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.04.29 04:09:00 -
[97] - Quote
I'm moving houses this weekend/week, but snuck in an update to the EVE Central SMTP feeder to address occasional funkages, after I noticed we had lower inbound order data from them. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.01 18:56:00 -
[98] - Quote
The real-time map appears to be borked atm. We're aware of this, and I've harassed the author to fix :) EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.02 05:37:00 -
[99] - Quote
Tonight's updates:
- The real-time map has been un-borked: http://map.eve-emdr.com
- Worked with the EVE Central maintainer to correct their broken SMTP feed. We're getting some data, but it is currently sending out badly formed data (that we are filtering) at intervals. Talked to Yann about just using a direct ZeroMQ feed. Which leads to the next big development...
- I've got a prototype ZeroMQ gateway (IE: You can send orders to us over ZeroMQ instead of HTTP) running. Please PM me if you're interested. I'll have documentation soon.
- Further refinements to the uploader-visible error feedback.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.12 03:24:00 -
[100] - Quote
Recent changes:
- Added an experimental ZMQ gateway for sites that would like to relay market data more efficiently. Please PM me if you're interested. It's still preliminary, but I'd love to have help testing.
- Hopefully improved handling of gzipped uploads.
- Supporting the silly 'data' POST form-encoded requests.
- Lots of creature comforts with eventual machine volunteers in mind. All of the startup scripts are much improved.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
173
|
Posted - 2012.05.12 15:47:00 -
[101] - Quote
Code changes for post formed and compressed uploads are incorrect. Get in touch and I'll walk you through the fixes. |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.12 16:18:00 -
[102] - Quote
Ilyk, if you still want/need another relay I can set up a new node for you on my rackspacecloud account. I assume it doesn't have to be a large one.
My rackspace stuff is all sourced out of the Chicago datacenter. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.14 04:07:00 -
[103] - Quote
Barl Rathbone wrote:Ilyk, if you still want/need another relay I can set up a new node for you on my rackspacecloud account. I assume it doesn't have to be a large one.
My rackspace stuff is all sourced out of the Chicago datacenter. Or if needed I could bring up a Linode, looks like that's what you're using currently. I'll definitely be in need of relays in the near future. Been dealing with moving into a new house unexpectedly, which slowed things down for a while, but I'm back in action now. Aiming to get one or two more issues worked through this week, then do a fial documentation push, then look to get some relays set up.
Rackspace or Linode are both just fine. It just can't be Atlanta+Linode, since that wouldn't give us any useful additional redundancy. Data usage from Atlanta to another Linode location may be free, though.
I'll be sending the call out for relays on the forums, and on the mailing list: https://groups.google.com/forum/#!forum/eve-emdr
Keep an eye on whichever one works best for you. The mailing list is super, super low volume, as I've mostly been doing things here. That'll probably be more for important announcements once we're up and running. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.14 04:11:00 -
[104] - Quote
I'm hoping we're reaching the end of the line as far as disruptive changes goes. I definitely need some eyes on things after this round of changes, as we have changed how we handle decompression and parsing.
- Decompression should now work properly (for real this time) for form-encoded POSTs. I'd strongly recommend against using form-encoded POSTs, as it's additional complexity, but the option is there for people with bad tools, or can't be bothered to read docs for their tools.
- Added more error handling for providing feedback when badly formed form-encoded POSTs are encountered.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
173
|
Posted - 2012.05.14 06:08:00 -
[105] - Quote
After running some testing:
- Method: POST (form-encoded) Compression: None Result: OK
- Method: POST (form-encoded) Compression: GZip Result: OK
- Method: POST (form-encoded) Compression: Deflate Result: OK
- Method: POST (entity) Compression: None Result: OK
- Method: POST (entity) Compression: GZip Result: OK
- Method: POST (entity) Compression: Deflate Result: OK
EMDR will be added in EMUU endpoints in few. |

Desmont McCallock
173
|
Posted - 2012.05.14 06:23:00 -
[106] - Quote
Now last thing that needs to be fixed is when uploading empty orders messages. I tried to setup EMDR locally (on Windows machine) but after a days headbanging I gave up. Didn't expected that setting up a Python client would be so hard. What really got on my nerves was the fact that I had to download, build, install all those external libraries a Python project is using and then finding out that it still doesn't run. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.14 14:26:00 -
[107] - Quote
Desmont McCallock wrote:Now last thing that needs to be fixed is when uploading empty orders messages. I tried to setup EMDR locally (on Windows machine) but after a days headbanging I gave up. Didn't expected that setting up a Python client would be so hard. What really got on my nerves was the fact that I had to download, build, install all those external libraries a Python project is using and then finding out that it still doesn't run. Yeah, it can run on Windows, but considering that you've got a lot of extra work to do to install a compiler on Windows, it's probably not going to be something I want to officially support, even though it should be doable (in theory). As you saw, there are quite a few dependencies, gevent and libzmq being the ones needing a compiler.
I'll eventually write detailed instructions for Linux (which would be generic enough for the Mac OS users to follow), though. Once I've got the last few code rough spots fixed up, documentation will become my focus for the rest of the week. This will help make it possible to recruit people to run relays.
Something I have been looking into pyzmq-static:
http://pypi.python.org/pypi/pyzmq-static/
This is currently running an older version of pyzmq that isn't compatible with EMDR, but that bundles libzmq, which would reduce some of the annoyances you ran into. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
173
|
Posted - 2012.05.14 14:48:00 -
[108] - Quote
Actually it's zmq.green that's giving me the issues. It's not officially included in the distribution and I have to build, install it manually. Although I managed to do this at some time, still It through an exception on me with "Name _Socket not defined" in zmq\green\core.py |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.14 16:05:00 -
[109] - Quote
Ilyk Halibut wrote:Barl Rathbone wrote:Ilyk, if you still want/need another relay I can set up a new node for you on my rackspacecloud account. I assume it doesn't have to be a large one.
My rackspace stuff is all sourced out of the Chicago datacenter. Or if needed I could bring up a Linode, looks like that's what you're using currently. I'll definitely be in need of relays in the near future. Been dealing with moving into a new house unexpectedly, which slowed things down for a while, but I'm back in action now. Aiming to get one or two more issues worked through this week, then do a fial documentation push, then look to get some relays set up. Rackspace or Linode are both just fine. It just can't be Atlanta+Linode, since that wouldn't give us any useful additional redundancy. Data usage from Atlanta to another Linode location may be free, though. I'll be sending the call out for relays on the forums, and on the mailing list: https://groups.google.com/forum/#!forum/eve-emdr Keep an eye on whichever one works best for you. The mailing list is super, super low volume, as I've mostly been doing things here. That'll probably be more for important announcements once we're up and running.
Nah - my stuff is in ORD for Rackspace and EWR (newark) for Linode so you'd have physical redundancy. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.14 17:41:00 -
[110] - Quote
Desmont McCallock wrote:Actually it's zmq.green that's giving me the issues. It's not officially included in the distribution and I have to build, install it manually. Although I managed to do this at some time, still It through an exception on me with "Name _Socket not defined" in zmq\green\core.py
zmq.green is included as of pyzmq 2.2.0, make sure you upgrade to that. You'll need gevent as well. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
173
|
Posted - 2012.05.14 18:11:00 -
[111] - Quote
Unfortunately my friend, although it's in the repo, it's not included in the distributed msi or source zip files. Never the less I managed to get the source code from the repo, build it, install it but I can't make the EMDR source code to see the package. Now I get "ImportError: No module named green". Every other requirement is installed and working. |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.15 16:51:00 -
[112] - Quote
Desmont McCallock wrote:Unfortunately my friend, although it's in the repo, it's not included in the distributed msi or source zip files. Never the less I managed to get the source code from the repo, build it, install it but I can't make the EMDR source code to see the package. Now I get "ImportError: No module named green". Every other requirement is installed and working.
I'm in the same board with Desmont. I actually got the 2.2.0 egg built and installed but it broke pretty much everything in the process (e.g. now I'm getting undefined symbols on zmq_sendmsg when it tries to import the zmq.green lib or just zmq).
Frustrating to say the least. I'm trying to back everything out now and see if I can get my test harness working again before proceeding down the green path for a second try. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.15 18:55:00 -
[113] - Quote
I think they're approaching a release, so hopefully it won't be as painful for much longer. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.15 19:25:00 -
[114] - Quote
Ilyk Halibut wrote:I think they're approaching a release, so hopefully it won't be as painful for much longer.
The problem is that you need the dev branch of 2.2.0, not the release tarball. If you clone it out of git it's fine, it includes the green files. If you use the release 2.2.0 tarball it doesn't contain green and (obviously) fails.
However, I'm not pulling data with worker threads. Next up, database insertion. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.16 04:10:00 -
[115] - Quote
This will eventually be posted to the unified upload interchange format thread when it's in better shape, but I'm breaking all of the market data structures, along with serializers and de-serializers, out into their own project. Initially, this will just be for the unified format, but it'll be maintained in a manner to make it easy to drop others in if something new and better comes along.
https://github.com/gtaylor/EVE-Market-Data-Structures
There's going to be some pretty heavy lifting going on with this over the week, so I wouldn't use it for anything yet. It doesn't support the absence of orders/history for a given item+region ID combo yet, but that will be addressed shortly. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.16 13:16:00 -
[116] - Quote
Ilyk Halibut wrote:This will eventually be posted to the unified upload interchange format thread when it's in better shape, but I'm breaking all of the market data structures, along with serializers and de-serializers, out into their own project. Initially, this will just be for the unified format, but it'll be maintained in a manner to make it easy to drop others in if something new and better comes along. https://github.com/gtaylor/EVE-Market-Data-StructuresThere's going to be some pretty heavy lifting going on with this over the week, so I wouldn't use it for anything yet. It doesn't support the absence of orders/history for a given item+region ID combo yet, but that will be addressed shortly.
Nice! I was just working on my de-serializer but if you're going to publish one, hey why reinvent the wheel? :) |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
4
|
Posted - 2012.05.16 14:25:00 -
[117] - Quote
I'll probably be doing some pretty heavy re-working of what I have so far, because it made some bad assumptions. However, I'm hoping to have it in good shape and unit tested this week. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.16 20:19:00 -
[118] - Quote
Well in a very quick and dirty method I've got a process running pulling the full feed and stuffing it into my database. Very quick, very dirty but I wanted to load some data so I'll let it run for a while.
Nice work Ilyk. Very nice work! |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
5
|
Posted - 2012.05.17 14:56:00 -
[119] - Quote
Barl Rathbone wrote:Well in a very quick and dirty method I've got a process running pulling the full feed and stuffing it into my database. Very quick, very dirty but I wanted to load some data so I'll let it run for a while.
Nice work Ilyk. Very nice work!
Excellent, let me know if you see anything wrong. I'd like to have the data as scrutinized as humanly possible so we can catch anything before reaching "1.0". EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.17 16:56:00 -
[120] - Quote
Ilyk Halibut wrote:Barl Rathbone wrote:Well in a very quick and dirty method I've got a process running pulling the full feed and stuffing it into my database. Very quick, very dirty but I wanted to load some data so I'll let it run for a while.
Nice work Ilyk. Very nice work! Excellent, let me know if you see anything wrong. I'd like to have the data as scrutinized as humanly possible so we can catch anything before reaching "1.0".
It's a lot of data over time. My initial script to take in the data is pretty inefficient (straight up loop through the rows in each JSON message for inserts) and needs to be rewritten so it inserts all the rows in a JSON message at once rather than all the database connections being opened and closed.
So far the data base been pretty clean from what I've seen. I let the collector run for a few hours yesterday and didn't notice any problems that weren't on my side.
Let me know if you need another relay - I can have another linode or rackspace cloud box up and running quickly if needed. |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.18 16:11:00 -
[121] - Quote
I need to do some more research but I'm seeing some inconsistencies in the data. Unfortunately I didn't have my script save off the original data (a mistake soon rectified) for comparison but here's an example:
mysql> select * from marketdata where orderID = 2532530253; +-------+-----------------+---------------------+----------+--------+-------------+-----------------+---------------+---------------+-------+------------+-----+---------------------+----------+-----------+---------------+------------+---------------------+ | id | uploadKeys | generatedAt | regionID | typeID | price | volumeRemaining | volumeEntered | minimumVolume | range | orderID | bid | issueDate | duration | stationID | solarSystemID | suspicious | dateAdded | +-------+-----------------+---------------------+----------+--------+-------------+-----------------+---------------+---------------+-------+------------+-----+---------------------+----------+-----------+---------------+------------+---------------------+ | 27452 | Eve Addicts | 2012-05-18 00:00:52 | 10000043 | 30050 | 50001057.01 | 2 | 5 | 1 | -1 | 2532530253 | 1 | 2012-05-18 00:00:41 | 90 | 60008494 | 30002187 | NULL | 2012-05-18 10:33:50 | | 31771 | EVE Market Data | 2012-05-18 15:34:17 | 10000043 | 30050 | 50001057.01 | 2 | 5 | 1 | -1 | 2532530253 | 1 | 2012-05-09 18:14:10 | 90 | 60008494 | 30002187 | NULL | 2012-05-18 10:35:14 | | 45968 | EVE Central | 2012-05-18 15:34:55 | 10000043 | 30050 | 50001057.01 | 2 | 5 | 1 | -1 | 2532530253 | 0 | 2012-05-18 04:43:41 | 90 | 60008494 | 30002187 | NULL | 2012-05-18 10:35:52 | | 48411 | EVE Central | 2012-05-18 15:34:56 | 10000043 | 30050 | 50001057.01 | 2 | 5 | 1 | 65535 | 2532530253 | 0 | 2012-05-18 04:43:41 | 90 | 60008494 | 30002187 | NULL | 2012-05-18 10:35:52 | +-------+-----------------+---------------------+----------+--------+-------------+-----------------+---------------+---------------+-------+------------+-----+---------------------+----------+-----------+---------------+------------+---------------------+ 4 rows in set (0.09 sec)
The problem is the bid flag - this is just a random example of the problem - but the first two orders are showing as bids but the latter two from Eve Central are not. I'm less concerned about the inconsistency on the range field since i'm not sure what use it is at this time. And yes, it's harder to read that table without a fixed-width font but [code] doesn't seem to work here. |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.18 17:05:00 -
[122] - Quote
I just went through a data dump comparing the raw JSON messages and either Eve Central has their export backwards or the other two sites do. I'm showing identical orders but the JSON has false for Eve Central and true elsewhere. For example, from Eve Central:
[11.18,100000,4,2241318813,100000,1,false,"2012-04-04T04:44:43+00:00",90,60009217,30003451]
and from Eve Market Data:
[11.18,100000,4,2241318813,100000,1,true,"2012-04-04T04:44:43+00:00",90,60009217,30003451]
that's kind of a problem. :)
On the flip side I got my feeder to use half the disk I/O it was doing before thankfully. Under 500 blocks/second now. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
5
|
Posted - 2012.05.18 17:17:00 -
[123] - Quote
Yikes, that is probably a silly mistake in my EVE Central SMTP feeder. I've tweaked this, can you see if it's acting as expected for you now? EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.18 17:28:00 -
[124] - Quote
Ilyk Halibut wrote:Yikes, that is probably a silly mistake in my EVE Central SMTP feeder. I've tweaked this, can you see if it's acting as expected for you now?
Nope - still seeing it as of right now. (just emptied my DB and grabbed fresh data)
E.g:
Eve Market Data:
[58999.03,2,32767,2539306093,3,1,false,"2012-05-16T05:54:48+00:00",90,60005686,30002053]
Eve Central:
[58999.03,2,32767,2539306093,3,1,true,"2012-05-16T05:54:48+00:00",90,60005686,30002053] |

Desmont McCallock
175
|
Posted - 2012.05.18 17:59:00 -
[125] - Quote
Just a heads up. EVEMon 1.7.0 which will contain the EMUU will go beta on the 26th. So get prepared. Release is planned for June 10th if things go well. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
5
|
Posted - 2012.05.18 18:00:00 -
[126] - Quote
Desmont McCallock wrote:Just a heads up. EVEMon 1.7.0 which will contain the EMUU will go beta on the 26th. So get prepared. Cool, looking forward to it. We'll be ready. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
5
|
Posted - 2012.05.18 19:10:00 -
[127] - Quote
Barl helped me work out the aforementioned issue, so everyone can rest easy.
- Correctly parse the is_bid column of the EVE Central SMTP feed. Was previously matching to 'True', whereas it should be '1'. I'm not sure if I got this wrong from day 1, or if it was a change introduced with the recent addition of columns to EC's SMTP feed. It's most likely my own mistake.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.05.22 00:47:00 -
[128] - Quote
Linode is conducting some short-notice maintenance. We haven't grown past our single-node setup yet, so this will result in a short (less than 30 minute) outage. We'll be moving to a multi-node setup this week, so this will not be a problem in the future. Here's the text from Linode:
Quote: Hello,
This is an update to remind you that scheduled maintenance will be occurring for the host your Linode resides on shortly. The time window for the start of the maintenance is:
Monday, May 21st 2012 @ 21:00 - 23:59 (9 PM - midnight) EDT (Tuesday, May 22st, 2012 @ 01:00 - 04:00 UTC/GMT)
When the maintenance begins, your Linode will be gracefully powered down. We're expecting the maintenance to be completed in under 30 minutes, at which time your Linode will be queued to return to its previous state (booted or powered off).
There is no need to issue any jobs for your Linode as part of the maintenance. We will update you via this ticket once the maintenance has been completed.
We appreciate your patience and understanding as we work to maintain our infrastructure. Please let us know if you have any questions or concerns.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.05.22 02:43:00 -
[129] - Quote
Went over without a hitch. Let me know if anyone's consumers didn't re-connect automatically, it should have all recovered by itself. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Barl Rathbone
Research Anonymous
0
|
Posted - 2012.05.22 14:11:00 -
[130] - Quote
Ilyk Halibut wrote:Went over without a hitch. Let me know if anyone's consumers didn't re-connect automatically, it should have all recovered by itself.
Ironically my node went through maint at the same time so I can't comment. |

Otaci
Infinite Improbability Inc Mordus Angels
0
|
Posted - 2012.05.24 11:06:00 -
[131] - Quote
Ilyk Halibut wrote:Went over without a hitch. Let me know if anyone's consumers didn't re-connect automatically, it should have all recovered by itself. My consumers connected back automatically with no problems.
I have some stats on EMDR messages here: http://www.eve-markets.com/emdr/
|

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.05.24 19:36:00 -
[132] - Quote
Very cool, thanks for sharing.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
179
|
Posted - 2012.05.24 20:34:00 -
[133] - Quote
Otaci wrote:Ilyk Halibut wrote:Went over without a hitch. Let me know if anyone's consumers didn't re-connect automatically, it should have all recovered by itself. My consumers connected back automatically with no problems. I have some stats on EMDR messages here: http://www.eve-markets.com/emdr/ Pretty nice work there, Otaci. I'm sure that you will iron out any wrinkles the graph generation is make. Ilyk should really add a link to that page in EMDR home page. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.05.25 03:55:00 -
[134] - Quote
I'm finishing up the heavy lifting for the last major task left with EMDR. We need to support order lists that lack entries for an item in a particular region. IE: The item is not available in said region.
While I was tackling this, I decided to break my data structures and serialization/deserialization classes and functions out. I'll end up using these for some of my own projects, and figured other Pythonistas may as well.
I could really use some eyes on this: https://github.com/gtaylor/EVE-Market-Data-Structures
I'm really only interested in supporting Python 2.6 and 2.7 for now. I'll be writing documentation sometime soon, then replacing a good bit of the guts in EMDR with this. It's mostly just a ripping of the guts out of EMDR into its own package, so there is very little change, aside from supporting empty region+item combos. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.05.29 03:35:00 -
[135] - Quote
Leading up to our full-fledged launch, I have created an IRC room. This is mostly aimed at helping people set up, develop, and use consumers, gateways, and relays. I'll make a point of hanging out in here every day while working. I may not always be able to answer questions quickly, but if you speak up and hang around, I'll get you taken care of.
IRC Room: irc.coldfront.net #emdr
Also, if you'd like a more persistent form of communication, use the mailing list:
https://groups.google.com/forum/?fromgroups#!forum/eve-emdr
I'll be asking for volunteers over the mailing list shortly. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.05.29 05:34:00 -
[136] - Quote
The EVE Market Data Structrures project (which EMDR will be using soon) saw a lot of work tonight:
- Will use ujson, simplejson, or json module (in that order) if present.
- Improved unit test coverage.
- Added iterator methods for all data structures.
- Added length calculation for all data structures.
- Added __contains__ to all data structures.
This is all mostly basic stuff, made slightly less trivial due to internal accounting within each data structure. Rather than leaving you hanging on figuring it out, we'll just provide these for you. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
179
|
Posted - 2012.05.29 07:54:00 -
[137] - Quote
One thing I haven't understood, from the beginning in your code logic, is why are you decoding and then encoding again a UF message.
In your shoes I would just take the message, compare it to the specs to see if it satisfies all fields (validation), and if it does send the same message to the announcer. If the "generated" field is your concern, I don't thing that the validation logic takes more than a few millisecs, so that field is not necessary to be re-generated.
The validation logic should consist of checking that all fields are of the specs type, like
Field | Type | Value result | string | orders/history version | float | indifferent uploadKeys | dict | contains name and key and are of type string etc.
Edit: The above suggestion comes from the fact that I have changed the spec version number to "0.1" but I get back the message with version "0.1alpha" which is a violation of the specs (as the forwarder has altered a field it shouldn't). |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.05.29 14:25:00 -
[138] - Quote
Desmont McCallock wrote:One thing I haven't understood, from the beginning in your code logic, is why are you decoding and then encoding again a UF message. We've discussed this before, and I understand you don't like the approach, but I think it's a better fit in the long run. It'll be staying that way until a reason presents itself to act otherwise.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.05.29 20:56:00 -
[139] - Quote
I'm going to go on ahead and open this up in a super limited capacity, but EMDR is in need of one trusted volunteer to run a European gateway. Since EMDR is not yet packaged up in an easy-to-install form, I will need to be able to set it up and have a means of updating it without harassing the owner of the machine.
Here are some more specifics on what I'm looking for:
- While EMDR doesn't currently use much bandwidth at all (about 2-3 GB a day, in/out combined), this will change as we grow. A gateway host can't be on a tight bandwidth budget.
- A stable, speedy connection is a must-have.
- The box does not need to be a behemoth, but I'd like to have at least 512 MB of RAM available (712+ preferred) for EMDR's use. This is a good bit more than we currently use, but again, data growth, and additional features may bring this total up.
- You must be OK with the fact that running a gateway does cost money, and you will be harassed if the machine goes down.
- I'm currently only interested in running these on Ubuntu 11.10 and higher (12.04 would be preferred, especially in the case of a VM). This will eventually be extended to Debian, but I'm not ready to deal with that yet.
I've had a ton of people asking about helping out, which is awesome. For now, I need just one super-stout go-to-guy/machine to help test distributing the uploads across multiple gateways. If you are serious about volunteering, send me an EVEMail with the following details:
- The geographic location of your machine.
- The name of the service provider.
- A brief description of the machine's net connection.
- Is this a VM or a bare metal machine?
- The version of Ubuntu it is running.
- Is anything else running on the machine that would cause resource contention?
- Are you OK with handing over sudo access?
Thanks in advance, and I'm super psyched to see us start to weave our web of high availability. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.05.31 02:37:00 -
[140] - Quote
To prepare for my absence next week, we have ramped up to add a second HTTP gateway for incoming uploads. If I have time tomorrow, we'll bring up the redundant relay for you to connect to, for those that are availability-conscious. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Tseehn Marhn
University of Caille Gallente Federation
0
|
Posted - 2012.06.05 05:46:00 -
[141] - Quote
Just started looking into building a real-time market analyzer, and this caught my interest.
I've done zero work with any EVE market apis before, so just a quick newbie question:
What, exactly, is in the data dumps? Current universe-wide buy and sell orders? I'm not too worried about historical data just yet, but a list of all current buy/sells would be perfect. |

Otaci
Infinite Improbability Inc Mordus Angels
0
|
Posted - 2012.06.05 21:46:00 -
[142] - Quote
The market data being discussed in this thread are copies of what you see in-game when you look at the market for a particular item. They are the buy and sell orders for a particular item in a particular region.
An example of an EMDR message is here: http://www.eve-markets.com/msgrecvd/view/0000902f-a8a0-4958-b028-253ea6495663
Its for typeid 8585 (Medium S95a Partial Shield Transporter), in region 10000042 (at the bottom).
You can see the sell orders (7th row is false) and buy orders (7th row is true).
There are thousands of these messages per hour. |

Tseehn Marhn
University of Caille Gallente Federation
0
|
Posted - 2012.06.06 06:33:00 -
[143] - Quote
I see. So the EMDR is a stream of all the individual player uploads, collected from the various websites. |

Desmont McCallock
181
|
Posted - 2012.06.06 06:39:00 -
[144] - Quote
Tseehn Marhn wrote:I see. So the EMDR is a stream of all the individual player uploads, collected from the various websites. Currently it collects from player uploaders, EVE Market Data and EVE Central but the creator said it may stop collecting from market sites when EVEMon 1.7.0 gets released and player uploads cover the data EMDR is collecting from the market sites. |

Barl Rathbone
NIGHTMARE FACTORY INDUSTRIES ROL.Citizens
0
|
Posted - 2012.06.06 11:44:00 -
[145] - Quote
Tseehn Marhn wrote:I see. So the EMDR is a stream of all the individual player uploads, collected from the various websites.
You got it. That's it exactly. Think of it is as a live ticker-tape of all the market data collected by players and uploaded via unified uploader clients. |

Barl Rathbone
NIGHTMARE FACTORY INDUSTRIES ROL.Citizens
0
|
Posted - 2012.06.06 16:04:00 -
[146] - Quote
Otaci wrote:The market data being discussed in this thread are copies of what you see in-game when you look at the market for a particular item. They are the buy and sell orders for a particular item in a particular region. An example of an EMDR message is here: http://www.eve-markets.com/msgrecvd/view/0000902f-a8a0-4958-b028-253ea6495663Its for typeid 8585 (Medium S95a Partial Shield Transporter), in region 10000042 (at the bottom). You can see the sell orders (7th row is false) and buy orders (7th row is true). There are thousands of these messages per hour.
Otaci - are you storing all the JSON messages and breaking them down into separate databse fields? Just curious as to what you're doing on the backend with the EMDR messages and what you're running to do it. |

Otaci
Infinite Improbability Inc Mordus Angels
0
|
Posted - 2012.06.06 18:51:00 -
[147] - Quote
I am storing the JSON messages for now, but thats only because I'm still at the beginning with this web site. I need the originals to be able to track down problems and perfect my algorithms. One day I'll get around to writing a data pruning job, hopefully before the volume starts causing problems.
I am extracting the data, but I'm only keeping it in memory long enough to calculate statistics data, basically the data you see on my web-site. I'm not storing every row in a relational database. I'm using the Erlang language (http://erlang.org/).
To be honest, I'm a bit nervous about talking too much about how I am doing stuff because I've only just started with this web site and I'm concerned about competition. |

Dream Five
Renegade Pleasure Androids Pleasure Syndicate
281
|
Posted - 2012.06.07 06:48:00 -
[148] - Quote
sounds incredibly cool. |

Leolie Aylet
Center for Advanced Studies Gallente Federation
1
|
Posted - 2012.06.07 19:54:00 -
[149] - Quote
Great job, awesome work !
Anyway it's possible to get buy/sell orders of a specific items in a Region/Station (a sort of filter by itemID,regionID, etc ... ) ? |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.07 21:47:00 -
[150] - Quote
Leolie Aylet wrote:Great job, awesome work !
Anyway it's possible to get buy/sell orders of a specific items in a Region/Station (a sort of filter by itemID,regionID, etc ... ) ? No, that's not what EMDR is. EMDR is a dumb firehose of near-realtime data uploads from players. It aspires to be nothing more. Down the road, we may filter out obviously malicious payloads, or combine multiple payloads to save bandwidth/processing, but we'll always just be a dumb feed.
You'll want to hit one of the many market sites (that would sit on the receiving end of EMDR) for historical data, or record your own. EVE Central, EVE Marketdata, EVE Marketeer, EVE Addicts, and other sites all have historical data APIs. I'd consider using those if you don't want to record your own.
Hope that helps! EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.07 21:49:00 -
[151] - Quote
I posted this to the mailing list, but figured I'd mention it here too. I've been away on vacation since last Friday, and will be gone until Sunday night. Normally I'd be a lot more responsive and involved in the discussion here, but this is a much-needed break from the intarwebs.
I hope all is going well, and will return in full force to push to "1.0" next week! EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
181
|
Posted - 2012.06.10 15:44:00 -
[152] - Quote
I'l be damned.  The EMDR map is lighting up like a Christmas tree. Stats are sky rocketing. |

Otaci
Infinite Improbability Inc Mordus Angels
0
|
Posted - 2012.06.10 16:36:00 -
[153] - Quote
Holy Smokes! Server load has rocketed. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.10 21:59:00 -
[154] - Quote
EMDR is holding up good so far. For VM with four virtual processors, we're sitting right around 1.17 load average on both gateways. This is excellent given the amount of traffic we're pushing.
I'm going to need a third Linode gateway volunteer, if anyone would like to donate one ($20/month). Same details apply as outlined earlier, but it'd probably need to be the only thing running on the VM. Please EVEMail me or punt gtaylor on #emdr on ColdFront IRC if you'd like to help. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.11 03:13:00 -
[155] - Quote
An end-of-first-night status update for any curious Georges. The gateways held up marvelously, and the announcers didn't break a sweat. Bandwidth usage on our gateways was a little higher than we'd prefer, but we'll be taking steps to improve on that shortly. We're in need of relays now, so EVEMail me, or hop in #emdr on ColdFront and get my attention there if you'd like to help.
As far as new changes tonight:
- Dis-continued the EVE Marketdata and EVE Central feeder daemons. These were pulling market data from those two sites and stuffing it back into EMDR. Due to the large volume of data we're now getting directly, there's just no point, as we end up getting huge messages containing the same stuff (which is bad). This should reduce bandwidth and the number of dupes consumers are seeing.
- Made some finishing touches to the relays. They now support some simple message-level de-duping, which means relays can now connect to one or more upstream announcers (or other relays) to allow for the self-healing EMDR hangs its hat on. For example, if your relay is connected to Announcer1 and Announcer2, the message streams are de-duped, so your consumers only see one of each upload. If Announcer1 goes down, everything will continue to work fine.
- An option has been added to make the relay de-compress all outbound messages. No public relays should set this. This is only for private relays. For example, if you have two applications running on your server that need the data, instead of connecting to EMDR twice, you'd run your own relay with the decompression option enabled. This would save both of us bandwidth, and probably save yourself some CPU util (you'd only be de-compressing each message once, instead of twice).
Before I go quiet for some sleep, I'd love to see some people share their consumer code. The large volume of data we see now has brought some sites down due to engineering issues on their end, so we'll want to try to share some best practices. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.11 04:57:00 -
[156] - Quote
I thought I was done for the night, but one more really important one. Make sure to read if you're currently consuming, or you may find yourself suddenly disconnected! We're shifting to what I consider a "1.0" deployment, and there's one last bit of breakage leading up to that. Read this:
https://groups.google.com/forum/?fromgroups#!topic/eve-emdr/BxpwU49PCds
We have our first proper relay up and running. We can now survive either of our two gateways/announcers failing without service interruptions. Thanks goes to udsaxman for volunteering the relay. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
7
|
Posted - 2012.06.12 11:23:00 -
[157] - Quote
I was seeing a lot of old data being relayed by EMDR. With old i mean generatedAt times of 2 weeks in the past. I am now filtering on generatedAt times, anything older than an hour is discarded (and doesn't have to be processed later). This reduced the server load quite a bit.
Would be great if EMDR could filter on data freshness, that would reduce the bandwidth a bit. You probably want to have a more relaxed filter, like max age 2 days or something. Creator of Eve Addicts |

Desmont McCallock
181
|
Posted - 2012.06.12 11:36:00 -
[158] - Quote
This has nothing to do with EMDR and EMDR should not do any filtering as it's just a relay service. The reason you are seeing old data is due to EVEMon 1.7.0 activation. Upon activation EVEMon is sending any data it finds in the EVE client cache (and deletes the files once it's done). I thought about filtering data in EVEMon before sending, but ended up that that's not EVEMon's responsibility as an uploader. So this leaves the responsibility with the receiver, meaning the market aggregator. |

Snarf Aldes
University of Caille Gallente Federation
7
|
Posted - 2012.06.12 13:41:00 -
[159] - Quote
Desmont McCallock wrote:This has nothing to do with EMDR and EMDR should not do any filtering as it's just a relay service. The reason you are seeing old data is due to EVEMon 1.7.0 activation. Upon activation EVEMon is sending any data it finds in the EVE client cache (and deletes the files once it's done). I thought about filtering data in EVEMon before sending, but ended up that that's not EVEMon's responsibility as an uploader. So this leaves the responsibility with the receiver, meaning the market aggregator. I guessed that was the case, so it should solve itself in time. Creator of Eve Addicts |

Tseehn Marhn
University of Caille Gallente Federation
0
|
Posted - 2012.06.12 13:54:00 -
[160] - Quote
Finally got a VB application storing data to a local DB after screwing around with pathfinding algorithms for way too long (damn you D* Lite...).
I actually came to ask about the old records, but I see that that's on purpose.
I also had another question about the time format. Is there any chance of switching to something more computer friendly - like a timestamp or something? I'm sure I can convert the ISO 8601, but I'm not looking forward to it. VB is impressing me less and less the more I learn about it.
Also the price values. Sometimes they're coming through as ints, other times as floats. Is this on purpose, or is something on my end casting things funny?
Finally, I'd also like to volunteer for any coding you might need. I'm not a 1337 programmer by any means - but I have been doing it off and on as a hobby for nearly 20 years. You all seem to have it covered, and I appear to be out of your technology stack anyway, but just the same. I'm familiar with:
PHP/MySQL HTML/CSS JavaScript Java VB More or less understand various flavors of C, C++, C#. I can learn. Once you know one language, the rest is pretty much syntax.
In any case, awesome show. Great job. |

Desmont McCallock
181
|
Posted - 2012.06.12 14:05:00 -
[161] - Quote
Tseehn Marhn wrote:I also had another question about the time format. Is there any chance of switching to something more computer friendly - like a timestamp or something? I'm sure I can convert the ISO 8601, but I'm not looking forward to it. VB is impressing me less and less the more I learn about it. https://forums.eveonline.com/default.aspx?g=posts&m=974200#post974200Tseehn Marhn wrote:Also the price values. Sometimes they're coming through as ints, other times as floats. Is this on purpose, or is something on my end casting things funny? All should be converted to decimal. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.12 14:15:00 -
[162] - Quote
Tseehn Marhn wrote: Also the price values. Sometimes they're coming through as ints, other times as floats. Is this on purpose, or is something on my end casting things funny?
This will be addressed in an upcoming update. Should be this week.
Tseehn Marhn wrote: Finally, I'd also like to volunteer for any coding you might need.
The EMDR source is as at: https://github.com/gtaylor/EVE-Market-Data-Relay the upcoming data structures and serialization module is at: https://github.com/gtaylor/EVE-Market-Data-Structures
Those can always use some eyeballs and an eye for refinement. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.12 16:16:00 -
[163] - Quote
To better cope with the higher CPU demands that resulted from adding de-duplication to the relay daemons, I've written an alternative relay daemon in Go:
https://github.com/gtaylor/emdr-relay-go
This is currently completely unconfigurable and hasn't been prettied up, but it's what we're currently using on our relay. I have found that it drops CPU util by 50%, and significantly reduces memory consumption (something like 500% or more, depending on architecture and other factors).
If anyone is decent with Go, I could really use some eyes on this. I'm probably not doing everything as efficiently as I could be.
For everyone else, this is probably going to be the standard relay. It's faster, more efficient, and most importantly, it's easier to build/install. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.12 21:05:00 -
[164] - Quote
Tseehn Marhn wrote: Also the price values. Sometimes they're coming through as ints, other times as floats. Is this on purpose, or is something on my end casting things funny?
I just tried to reproduce this and couldn't. Are you sure they're not being parsed by your JSON parser as ints or floats? The JSON strings look correct, from the ones I sampled. Can you send a complete JSON string with the integers instead of the floats? EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Tseehn Marhn
University of Caille Gallente Federation
0
|
Posted - 2012.06.12 21:46:00 -
[165] - Quote
Desmont McCallock wrote:https://forums.eveonline.com/default.aspx?g=posts&m=974200#post974200
I see. Ah well. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.12 22:05:00 -
[166] - Quote
I'd like to open discussion up for dropping EMK upload support. Please discuss this on the mailing list thread if you have an opinion: EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Tseehn Marhn
University of Caille Gallente Federation
0
|
Posted - 2012.06.12 22:56:00 -
[167] - Quote
Ilyk Halibut wrote:Tseehn Marhn wrote: Also the price values. Sometimes they're coming through as ints, other times as floats. Is this on purpose, or is something on my end casting things funny?
I just tried to reproduce this and couldn't. Are you sure they're not being parsed by your JSON parser as ints or floats? The JSON strings look correct, from the ones I sampled. Can you send a complete JSON string with the integers instead of the floats?
The parser is at fault. Any number without a decimal portion is cast as an int. Unless all prices should have the decimal portion. I'll let it run for a bit and see if I catch any more.
In the meantime I did catch some doubles, but I'm assuming you're not rounding prices to two places. {"uploadKeys":[{"name":"BattleClinic","key":"3C3490E986D448B1E5379147115E887E4E045554"},{"name":"EVE Central","key":"0"},{"name":"EVE Market Data Relay","key":"0"}],"generator":{"version":"1.7.0.3809","name":"EVEMon.MarketUnifiedUploader"},"currentTime":"2012-06-12T22:27:22+00:00","resultType":"orders","version":"0.1alpha","rowsets":[{"typeID":19726,"rows":[[2.499800e+09,1,32767,2530794964,1,1,false,"2012-06-10T00:00:37+00:00",90,60000916,30000162],[2.600000e+09,1,32767,2558036643,1,1,false,"2012-06-04T00:00:48+00:00",90,60003046,30000162],[2.600000e+09,1,32767,2558036234,1,1,false,"2012-06-04T00:00:21+00:00",90,60001804,30000162],[2.499700e+09,1,32767,2560182559,1,1,false,"2012-06-11T00:00:41+00:00",90,60003046,30000162],[2.600000e+09,1,32767,2558036931,1,1,false,"2012-06-04T00:00:06+00:00",90,60002242,30000192],[2.500000e+09,1,32767,2562215264,1,1,false,"2012-06-08T00:00:13+00:00",90,60013045,30000205],[2.499600e+09,1,32767,2566278358,1,1,false,"2012-06-12T00:00:32+00:00",90,60013141,30000194],[2.499600e+09,1,32767,2565739948,1,1,false,"2012-06-12T00:00:27+00:00",30,60001804,30000162],[18343143.2399,1,40,2526286216,1,1,true,"2012-05-04T00:00:16+00:00",90,60003760,30000142],[1526000111.18,2,32767,2257404397,2,1,true,"2012-05-08T00:00:21+00:00",90,60003760,30000142],[1355000000.0,2,32767,2305338019,2,1,true,"2012-03-14T00:00:17+00:00",90,60003760,30000142],[1526000111.08,3,32767,2349367481,3,1,true,"2012-04-13T00:00:25+00:00",90,60003760,30000142],[190000.0,1,40,2483272789,1,1,true,"2012-03-26T00:00:00+00:00",90,60003760,30000142],[1698760003.0,1,32767,2549799019,1,1,true,"2012-06-10T00:00:14+00:00",90,60003760,30000142],[1355001000.0,1,32767,2550311728,1,1,true,"2012-06-05T00:00:52+00:00",90,60003760,30000142],[1698760022.0,1,32767,2540941396,1,1,true,"2012-06-10T00:00:29+00:00",90,60003760,30000142],[1527000017.0,1,32767,2546957310,1,1,true,"2012-05-25T00:00:11+00:00",90,60003760,30000142],[1694410000.89,2,-1,2563573957,2,1,true,"2012-06-10T00:00:50+00:00",90,60003760,30000142],[1704951012.0,1,32767,2554540283,1,1,true,"2012-06-12T00:00:08+00:00",90,60012667,30000180],[1705010000.0,1,32767,2563174699,1,1,true,"2012-06-12T00:00:14+00:00",30,60003760,30000142],[1706000000.0,1,32767,2551801643,1,1,true,"2012-06-12T00:00:50+00:00",90,60003760,30000142],[1706000002.0,1,32767,2549757763,1,1,true,"2012-06-12T00:00:43+00:00",90,60001633,30000151],[1707000000.88,1,32767,2542776440,1,1,true,"2012-06-12T00:00:36+00:00",30,60003760,30000142]],"regionID":10000002,"generatedAt":"2012-06-12T00:00:04+00:00"}],"columns":["price","volRemaining","range","orderID","volEntered","minVolume","bid","issueDate","duration","stationID","solarSystemID"]}
I'll let it run for a bit and see if anything other than a decimal comes up. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.12 23:53:00 -
[168] - Quote
Yeah, that looks like a language/parser/toolkit issue, which I'm not able to help with. I don't remember much at all about VB.
You'll probably want to explicitly cast the numbers, though. It sounds like your parser casts whole numbers (.0) as ints/longs, and everything else as decimals. Python does it differently, in that it's looking for the presence of a period in the JSON string to denote a float, and else, an int/long. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Tseehn Marhn
University of Caille Gallente Federation
0
|
Posted - 2012.06.13 00:20:00 -
[169] - Quote
Yeah, it's easily solved.
Convert.ToDouble(yourArrayData(index)) |

Desmont McCallock
182
|
Posted - 2012.06.13 06:03:00 -
[170] - Quote
Are you using the .NET native json parser? http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx#Y0 Btw, I'll just repeat, prices should be cast to decimal. |

Tseehn Marhn
University of Caille Gallente Federation
0
|
Posted - 2012.06.13 13:06:00 -
[171] - Quote
Yes, I am. I'm using the sample code posted on the EMDR website. Which, if I'm not mistaken, you wrote actually. So I should be OK there.
And just tonight I rewrote the little bit of an application I've completed so far. Having learned so much the last few days, I had to restructure the whole thing. Including getting all my data types straight between JSON, the application, and the DB. Turning on 'option strict' really helped with this actually.
|

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.14 03:57:00 -
[172] - Quote
I've done a pretty good round of documentation updates, and updated the main thread. If anyone sees anything mis-spelled, badly explained, or flat out wrong, please let me know. My aim is to make most of this stuff easy to understand. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Bum Badiipadaap
Federal Navy Academy Gallente Federation
0
|
Posted - 2012.06.16 07:18:00 -
[173] - Quote
Has anyone done this using only javascript? |

Desmont McCallock
184
|
Posted - 2012.06.16 07:50:00 -
[174] - Quote
Bum Badiipadaap wrote:Has anyone done this using only javascript? Does this suffice? http://www.zeromq.org/bindings:javascript |

Vaerah Vahrokha
Vahrokh Consulting
1302
|
Posted - 2012.06.17 00:21:00 -
[175] - Quote
What if some 3rd party data consumer website did not need all this data sent at all, but just something like:
record {
item_ID, region_ID, minimum_sell, date_time_minimum_sell_last_update, maximum_bid, date_time_maximum_bid_last_update
}
Auditing | Collateral holding and insurance | Consulting | PLEX for Good Charity
Twitter channel |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.17 03:09:00 -
[176] - Quote
Vaerah Vahrokha wrote:What if some 3rd party data consumer website did not need all this data sent at all, but just something like:
record {
item_ID, region_ID, minimum_sell, date_time_minimum_sell_last_update, maximum_bid, date_time_maximum_bid_last_update
}
You are free to pick out whatever you need. EMDR sends data out in the unified format, which has everything you need in order to selectively pick from. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Vaerah Vahrokha
Vahrokh Consulting
1304
|
Posted - 2012.06.17 06:33:00 -
[177] - Quote
Ilyk Halibut wrote: You are free to pick out whatever you need. EMDR sends data out in the unified format, which has everything you need in order to selectively pick from.
Since EMDR does not have past data I will not be able to pick older orders (still well valid today) and merge them with the new ones to form a decent order book. Did I miss something? Auditing | Collateral holding and insurance | Consulting | PLEX for Good Charity
Twitter channel |

Desmont McCallock
184
|
Posted - 2012.06.17 07:58:00 -
[178] - Quote
EMDR is not a market data aggregator but a simple relay, a hose of continuous real time market data. What people do with those data are up to them. |

Demption
Aliastra Gallente Federation
0
|
Posted - 2012.06.17 12:27:00 -
[179] - Quote
Vaerah Vahrokha wrote: Since EMDR does not have past data I will not be able to pick older orders (still well valid today) and merge them with the new ones to form a decent order book.
All currently active orders are exported (by say EVEMon) and uploaded, so that's older orders that are still valid too. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.17 19:13:00 -
[180] - Quote
Vaerah Vahrokha wrote: Since EMDR does not have past data I will not be able to pick older orders (still well valid today) and merge them with the new ones to form a decent order book. Did I miss something?
Yeah, I think you missed the FAQ on the top of the thread:
- Can I get historical data from EMDR?
- No. EMDR is only a dumb data firehose. We feed the sites that offer historical data APIs. They are the ones that serve this need, not EMDR. That said, if you find yourself constantly hammering other APIs to fill your DB, you should probably just consume EMDR and stop burdening other sites.
So, in essence, record what you can/want to, fill in your historical gaps with your favorite third-party API (or several). After that point, keep recording the new stuff and you're all caught up. You still get 'history' messages from EMDR, which are also another way to fill in the gaps (history and order are the two message types).
But the most important thing to grasp is that EMDR is a dumb firehose. It sets you up as if you were on the receiving end of a huge amount of direct uploads, and leaves you to decide what to do with all of the incoming data. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.18 05:01:00 -
[181] - Quote
Tonight's updates:
- Adjustments to the GoLang relay to figure out what error is leading to memory leakage.
- Restored EMK uploading to the gateways, for now...
- Added some additional useful error messages for incorrectly formatted UUIF messages.
- Dead code removal.
- Set up some automated alarms to notify me if there's an outage.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
7
|
Posted - 2012.06.18 08:45:00 -
[182] - Quote
I'm seeing something weird with respect to dates. The generatedAt value of 99% of the data has an hour field of 00, like this: snippet of received data:
Quote:2012-06-18T00:00:20+00:00 2012-06-15T00:00:32+00:00 2012-06-17T00:00:39+00:00 2012-06-17T00:00:05+00:00 2012-06-18T00:00:37+00:00 2012-06-18T00:00:20+00:00 2012-06-16T00:00:56+00:00 2012-06-18T00:00:38+00:00 2012-06-18T00:00:28+00:00 2012-06-17T00:00:09+00:00 2012-06-16T00:00:48+00:00 2012-06-10T00:00:46+00:00 2012-06-18T00:00:49+00:00 2012-06-18T00:00:55+00:00 2012-06-17T00:00:39+00:00 2012-06-16T00:00:42+00:00 2012-06-18T00:00:13+00:00 2012-06-18T00:00:32+00:00 2012-06-16T00:00:57+00:00 2012-06-17T00:00:20+00:00 2012-06-17T00:00:56+00:00 2012-06-18T00:00:44+00:00 2012-06-18T00:00:49+00:00 2012-06-18T00:00:14+00:00 2012-06-18T00:00:28+00:00 2012-06-11T00:00:33+00:00 2012-06-17T00:00:35+00:00 2012-06-18T00:00:14+00:00 2012-06-18T00:00:47+00:00 2012-06-18T00:00:57+00:00 2012-06-18T00:00:54+00:00 2012-06-18T00:00:46+00:00 2012-06-18T00:00:51+00:00 2012-06-17T00:00:12+00:00 2012-06-17T00:00:30+00:00 2012-06-18T00:00:26+00:00 2012-06-18T00:00:32+00:00 2012-06-10T00:00:36+00:00 2012-06-18T00:00:29+00:00 2012-06-12T00:00:33+00:00 2012-06-14T00:00:26+00:00 2012-06-17T00:00:00+00:00 2012-06-17T00:00:10+00:00 2012-06-18T00:00:37+00:00 2012-06-18T00:00:14+00:00 2012-06-18T00:00:49+00:00 2012-06-14T00:00:20+00:00 2012-06-17T00:00:35+00:00
I don't know where the problem occurs, at EVEMon or at EMDR, but this cannot be right. Creator of Eve Addicts |

Desmont McCallock
186
|
Posted - 2012.06.18 08:55:00 -
[183] - Quote
If those are 'history' messages it's perfectly normal as Entity explained in https://forums.eveonline.com/default.aspx?g=posts&m=1265226#post1265226 |

Snarf Aldes
University of Caille Gallente Federation
7
|
Posted - 2012.06.18 10:12:00 -
[184] - Quote
Nope, they are all from orders.
edit: Even for history the generatedAt value should be variable, its not the actual data from the 'rows' field, those are all dates with time 00:00:00. Creator of Eve Addicts |

Desmont McCallock
186
|
Posted - 2012.06.18 11:21:00 -
[185] - Quote
I just checked with EVEMon and it turns out to be an EMDR bug. |

Otaci
Infinite Improbability Inc Mordus Angels
0
|
Posted - 2012.06.18 11:48:00 -
[186] - Quote
Just confirming the 00:00 bug.
Number of occurrences of a particular {Hrs,Mins} time in a sample of 2750987 market snapshots:
[{{0,0},2749524}, {{9,57},33}, {{10,38},33}, {{10,28},30}, {{10,37},30}, {{10,30},30}, {{10,31},29}, {{10,36},27}, {{10,39},27}, {{10,40},25},
|

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.18 14:03:00 -
[187] - Quote
Is this a new behavior, or has it been this way for a while? If anyone with historical records could comment with certainty, that'd be awesome. I'll start seeing if I can reproduce it, in the meantime. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Barl Rathbone
NIGHTMARE FACTORY INDUSTRIES ROL.Citizens
0
|
Posted - 2012.06.18 22:17:00 -
[188] - Quote
Ilyk Halibut wrote:Is this a new behavior, or has it been this way for a while? If anyone with historical records could comment with certainty, that'd be awesome. I'll start seeing if I can reproduce it, in the meantime.
This is the first 30 rows from my DB so a few days old since I expunged:
+-----------+---------------------+ | orderID | generatedAt | +-----------+---------------------+ | 468766023 | 2012-06-16 00:00:43 | | 468840171 | 2012-06-17 00:00:52 | | 547489123 | 2012-06-18 00:00:47 | | 571460595 | 2012-06-17 00:00:50 | | 574327332 | 2012-06-16 00:00:25 | | 584959892 | 2012-06-16 00:00:30 | | 602992867 | 2012-06-02 00:00:44 | | 608251359 | 2012-05-29 00:00:17 | | 625302900 | 2012-06-02 00:00:06 | | 628410159 | 2012-06-15 00:00:49 | | 632715417 | 2012-06-09 00:00:08 | | 685886645 | 2012-06-10 00:00:04 | | 693936276 | 2012-06-17 00:00:52 | | 693943346 | 2012-06-16 00:00:01 | | 701055227 | 2012-06-14 00:00:35 | | 718577482 | 2012-06-04 00:00:48 | | 742684127 | 2012-06-15 00:00:10 | | 742684363 | 2012-06-17 00:00:28 | | 742688256 | 2012-06-17 00:00:08 | | 765443947 | 2012-05-29 00:00:03 | | 785285268 | 2012-06-11 00:00:58 | | 795473049 | 2012-06-14 00:00:23 | | 809346419 | 2012-06-13 00:00:37 | | 809347982 | 2012-06-10 00:00:30 | | 810868383 | 2012-06-15 00:00:57 | | 816612483 | 2012-06-16 00:00:08 | | 822470501 | 2012-06-17 00:00:26 | | 822877900 | 2012-06-13 00:00:28 | | 823070102 | 2012-06-16 00:00:49 | | 823071375 | 2012-06-16 00:00:35 | +-----------+---------------------+ |

Desmont McCallock
186
|
Posted - 2012.06.19 10:13:00 -
[189] - Quote
Problem solved. EMDR back in business. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
6
|
Posted - 2012.06.20 02:38:00 -
[190] - Quote
A european relay has been added. If you're across the pond, make sure you use that.
http://www.eve-emdr.com/en/latest/access.html
p.s., we'd love to have some more relays! EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Snarf Aldes
University of Caille Gallente Federation
7
|
Posted - 2012.06.26 08:37:00 -
[191] - Quote
Just wanted to say that since the generatedAt issue has been solved, everything has been running very smoothly. The EVEMon / EMDR combination keeps Eve Addicts supplied with very up to date data.
Thnx to both, it works really well. Creator of Eve Addicts |

Barl Rathbone
NIGHTMARE FACTORY INDUSTRIES ROL.Citizens
0
|
Posted - 2012.06.26 13:29:00 -
[192] - Quote
I would love, love, LOVE if CCP would generate a market message that hits our cache when volumeRemaining hits 0 on an order (ie, it completes). That'd make my life a heck of a lot easier. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
8
|
Posted - 2012.06.26 14:38:00 -
[193] - Quote
Snarf Aldes wrote:Just wanted to say that since the generatedAt issue has been solved, everything has been running very smoothly. The EVEMon / EMDR combination keeps Eve Addicts supplied with very up to date data.
Thnx to both, it works really well. Thanks, glad to hear it's working well. The community has provided all kinds of useful feedback, help, and relays, which has made things go really smoothly. I hope we continue to see people share ideas about how to use EMDR, and that we can all find new and exciting things to do with the data! EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
8
|
Posted - 2012.06.26 14:39:00 -
[194] - Quote
Barl Rathbone wrote:I would love, love, LOVE if CCP would generate a market message that hits our cache when volumeRemaining hits 0 on an order (ie, it completes). That'd make my life a heck of a lot easier. That would be really nice, though, CCP has repeatedly expressed their opposition to providing real-time market data. I'm not sure they'd do anything to help our cause like that, though, it would be nice :) EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
8
|
Posted - 2012.06.26 14:40:00 -
[195] - Quote
Those on the mailing list have already seen this a while back, but I thought I'd also mention here that we now have four relays on two continents. Europe and the US each have two:
http://www.eve-emdr.com/en/latest/access.html
For those who value reliability as a chief concern, make sure you're connecting to more than one relay, and de-duplicating the messages that come in. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Tseehn Marhn
Eve Engineering Finance Eve Engineering
0
|
Posted - 2012.06.30 21:25:00 -
[196] - Quote
Barl Rathbone wrote:I would love, love, LOVE if CCP would generate a market message that hits our cache when volumeRemaining hits 0 on an order (ie, it completes). That'd make my life a heck of a lot easier.
I've been trying to think of a way to find completed orders as well. An idea I had was this.
Consider that the market order data is uploaded as lists of orders, and these lists are grouped by items in a region. If there is an order id in the database for some item in some region, and that order id is no longer appearing in the uploaded lists of orders for those items in that region, likely the order has been filled.
This assumes that every uploaded list of market data for an item in a region contains every order available in that region; I'm not 100% sure it does. |

Barl Rathbone
NIGHTMARE FACTORY INDUSTRIES ROL.Citizens
0
|
Posted - 2012.07.01 00:28:00 -
[197] - Quote
Tseehn Marhn wrote:Barl Rathbone wrote:I would love, love, LOVE if CCP would generate a market message that hits our cache when volumeRemaining hits 0 on an order (ie, it completes). That'd make my life a heck of a lot easier. I've been trying to think of a way to find completed orders as well. An idea I had was this. Consider that the market order data is uploaded as lists of orders, and these lists are grouped by items in a region. If there is an order id in the database for some item in some region, and that order id is no longer appearing in the uploaded lists of orders for those items in that region, likely the order has been filled. This assumes that every uploaded list of market data for an item in a region contains every order available in that region; I'm not 100% sure it does.
Which is what I do - but it would be nicer if a message was generated that I could trust a bit more. :) And your data is only good as long as people check that item in that region with the uploader running. Not a problem for trade hubs but you end up with stale data at times in less frequented region/item combinations which can be slightly annoying. |

Desmont McCallock
187
|
Posted - 2012.07.01 08:11:00 -
[198] - Quote
Absence of order id can also mean that that order was canceled or expired. |

Tseehn Marhn
Eve Engineering Finance Eve Engineering
0
|
Posted - 2012.07.01 17:43:00 -
[199] - Quote
Barl Rathbone wrote:Tseehn Marhn wrote:Barl Rathbone wrote:I would love, love, LOVE if CCP would generate a market message that hits our cache when volumeRemaining hits 0 on an order (ie, it completes). That'd make my life a heck of a lot easier. I've been trying to think of a way to find completed orders as well. An idea I had was this. Consider that the market order data is uploaded as lists of orders, and these lists are grouped by items in a region. If there is an order id in the database for some item in some region, and that order id is no longer appearing in the uploaded lists of orders for those items in that region, likely the order has been filled. This assumes that every uploaded list of market data for an item in a region contains every order available in that region; I'm not 100% sure it does. Which is what I do - but it would be nicer if a message was generated that I could trust a bit more. :) And your data is only good as long as people check that item in that region with the uploader running. Not a problem for trade hubs but you end up with stale data at times in less frequented region/item combinations which can be slightly annoying.
Ah, well, good to know it should work. Also good to know no order ID means dead order.
|

Barl Rathbone
NIGHTMARE FACTORY INDUSTRIES ROL.Citizens
0
|
Posted - 2012.07.01 19:46:00 -
[200] - Quote
Tseehn Marhn wrote:
Ah, well, good to know it should work. Also good to know no order ID means dead order.
Mind you I wouldn't trust a single order message -- I aggregate orders over time and then process through so I have a better shot of getting a valid "hit" rather than invalid data. It is all user uploaded stuff so you have to take it all with a grain of salt. :) |

Barl Rathbone
NIGHTMARE FACTORY INDUSTRIES ROL.Citizens
0
|
Posted - 2012.07.01 19:47:00 -
[201] - Quote
Desmont McCallock wrote:Absence of order id can also mean that that order was canceled or expired.
True - but the point is still valid - that it's not an active buy/sell order any longer. The reason is opaque but the net effect is the same. |

Ydnari
Estrale Frontiers Project Wildfire
124
|
Posted - 2012.07.02 17:41:00 -
[202] - Quote
EMDR plus EveMon's uploader is good stuff.
I used to parse exported market order files to keep prices up to date in a private industry calculator and order tracking site I wrote, now I have that connected to EMDR and just have to look at items on market in game for it to update prices a few seconds later.
And now having access to price history is icing on the cake 
Thanks to all the developers involved. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.07.03 18:53:00 -
[203] - Quote
Ydnari wrote:EMDR plus EveMon's uploader is good stuff. I used to parse exported market order files to keep prices up to date in a private industry calculator and order tracking site I wrote, now I have that connected to EMDR and just have to look at items on market in game for it to update prices a few seconds later. And now having access to price history is icing on the cake  Thanks to all the developers involved. We're glad you like it. Feel free to stop by #emdr on irc.coldfront.net anytime! EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Tseehn Marhn
Eve Engineering Finance Eve Engineering
0
|
Posted - 2012.07.03 19:34:00 -
[204] - Quote
Barl Rathbone wrote:Tseehn Marhn wrote:
Ah, well, good to know it should work. Also good to know no order ID means dead order.
Mind you I wouldn't trust a single order message -- I aggregate orders over time and then process through so I have a better shot of getting a valid "hit" rather than invalid data. It is all user uploaded stuff so you have to take it all with a grain of salt. :)
Yeah, considering this and other things, I'm just going to scrape data from the cache for now. It sucks I have to click through the market, but I don't feel like trying to find ways to filter out the spoofed orders right now. Eventually though, I want to combine local and EMDR data - and use local data to help verify the EMDR stuff where you can.
BTW, thanks Desmont for the cache parser DLL. Saved me weeks of trying to figure out the cache on my own. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.07.03 21:25:00 -
[205] - Quote
I think what was meant was that spoofing is obviously possible, but we don't see much evidence that it's a problem right now. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Barl Rathbone
NIGHTMARE FACTORY INDUSTRIES ROL.Citizens
0
|
Posted - 2012.07.03 21:35:00 -
[206] - Quote
Ilyk Halibut wrote:I think what was meant was that spoofing is obviously possible, but we don't see much evidence that it's a problem right now.
Correct. I haven't seen any real issues and to be honest, the volume of orders received if you identify the top and bottom oddballs tends to even out, just like any 95th percentile. |

Schereau Lasomere
University of Caille Gallente Federation
0
|
Posted - 2012.07.11 04:32:00 -
[207] - Quote
I'm trying to develop an EVE market data processor and I'm feeding it data from EMDR. A really great service! Big thanks to UUDIF's and EMDR's developers!
I've got a question for the UUDIF and EMDR developers:
I've read the EMDR and UUDIF specs as well as searched the related forum threads for info but I'm still confused about the currentTime and generatedAt timestamps.
You can read the reasons for my confusion below but basically I'm not sure which timestamp to use/trust for data freshness verification.
Some observations and suggestions:
currentTime: The UUDIF spec says that the time "may also be changed by any forwarders as well when the message is re-sent" which I interpret as the change being optional.
If the time is NOT changed by a forwarder (EMDR for example), then this time, as far as I can figure out, would be the generator's UTC/local time and so can't be used for verifying order freshness since all generators' clocks most likely are not synchronized.
Issue: The EMDR documentation does not (?) say whether EMDR does change currentTime or not. I'm guessing EMDR is NOT changing the time since I'm receiving messages out of order based on currentTime value (reading data from a single relay, the default European relay in Germany).
generatedAt: The UUDIF spec says this time is "The date/time...when the rowset was created". From where is this time taken/time according to whos clock?
- Search result generation time according to CCP's server time?
- UTC time, based on player's computer clock, when the search result is stored in the game cache?
- Other?
According to the UUDIF spec, this time is supposed to be used for freshness verification. If it's the UTC time, based on player's local time, when the search result is stored in cache, then this timestamp can't be used for freshness verification since most players' clocks aren't perfectly synchronized.
The UUDIF spech doesn't state where this time should be taken from and so I'm vorried that uploader developers may use different sources for this timestamp. This makes me unsure if I can trust this timestamp as an accurate freshness indicator.
Suggestion: Update the UUDIF spec so it enforces a common method for determining this time, ideally search result generation time according to CCP's server time, if possible.
|

Snarf Aldes
University of Caille Gallente Federation
7
|
Posted - 2012.07.11 07:20:00 -
[208] - Quote
generatedAt is the time when the eve client writes the data to the cache file. currentTime is the time that the cache file gets parsed and sent by the upload program (evemon etc.)
Times should all be in UTC. Creator of Eve Addicts |

Desmont McCallock
187
|
Posted - 2012.07.11 08:08:00 -
[209] - Quote
As Snarf said. All times should be UTC.
As the creator of EVECacheParser (a .NET library based on Entity's Reverence Python library) let me explain where 'generatedAt' comes from. Each cache file contains the time of its creation (EVE Time which is the same as UTC) in Windows filetime format. This filetime when parsed gives as the 'generatedAt' time.
'currentTime' is generated by the uploader app to state when the UUDIF was created. EMDR is indeed changing that (as a forwarder it's allowed to) and its not the same with the 'currentTime' EVEMon generates. Although in the majority of cases that time can be the same as the round trip time can be less than a sec.
Hope this helps. |

Muscaat
EVE Markets
12
|
Posted - 2012.07.11 11:40:00 -
[210] - Quote
Snarf Aldes wrote:Times should all be in UTC.
I disagree. As long as the timestamps have the correct timezone on them then there's no reason why uploaders should be forced to convert them to UTC themselves. See https://groups.google.com/d/msg/eve-emdr/oc6aMya4V1Y/5GsWbmh0l9QJ for the discussion triggered by me being in UTC+1 right now  |

Desmont McCallock
187
|
Posted - 2012.07.11 12:00:00 -
[211] - Quote
Because by using UTC you don't have to worry about DST. |

Muscaat
EVE Markets
12
|
Posted - 2012.07.11 12:09:00 -
[212] - Quote
Desmont McCallock wrote:Because by using UTC you don't have to worry about DST.
Who is "you" in that statement?
If the generators (the people who write the uploaders) are forced to convert to UTC then they do need to worry about DST, because they need to convert away from their local timezone (whatever that is right now).
The spec doesn't currently force UTC, which means that uploaders don't need to worry about DST (other than knowing what timezone they're in right now, which their date library does for them, right?) and consumers just need to parse the date properly and not worry about it (because their date library deals with the timezone for them, right?)
I agree that things would be a lot simpler if everyone just used UTC and got used to going to work at 23:00 or whatever, but I don't think that idea will catch on  |

Desmont McCallock
187
|
Posted - 2012.07.11 12:47:00 -
[213] - Quote
Muscaat wrote:Desmont McCallock wrote:Because by using UTC you don't have to worry about DST. I agree that things would be a lot simpler if everyone just used UTC That's the point behind the suggestion.
And just to clarify something here. Both me and Snarf said 'Times should all be in UTC.' as a suggestion. If we said 'All times have to be UTC' (which make it mandatory) then you would have a point to argue.
** Is there a Hermes recursion going on, cause there is a lot of misunderstanding around?
Edit: Btw, as we discussed (and I proved to you) in the Google group discussion, the time value has to be in UTC but you clearly have to state the TZ diff if you are using it. |

Muscaat
EVE Markets
12
|
Posted - 2012.07.11 13:36:00 -
[214] - Quote
Desmont McCallock wrote:Muscaat wrote:[quote=Desmont McCallock]Because by using UTC you don't have to worry about DST. Edit: Btw, as we discussed (and I proved to you) in the Google group discussion, the time value has to be in UTC but you clearly have to state the TZ diff if you are using it.
I'm not quite sure I understand this, but I'm fairly sure we don't actually disagree all that much so I'll stop arguing the point now  |

Desmont McCallock
187
|
Posted - 2012.07.11 14:02:00 -
[215] - Quote
In that discussion I am 'Jimi' as I'm known in the EVEMon forums as well. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.07.11 14:11:00 -
[216] - Quote
Yeah, this is not the most interesting discussion, so I'll just leave this hear to dispel confusion, myths, or half-truths. Here is basically all time fields in UUDIF are bound by:
Quote:The data/time in ISO 8601 format (example 2011-10-22T15:46:00+00:00)
Follow the ISO 8601 spec and you are compliant with UUDIF. If your local time is UTC, your offset is +00:00. If it's some other timezone, specify it in the tz offset. As long as you're doing that, people with ignorant consumers may get burnt, but that's only because they aren't doing what the spec demands (parsing tz offsets applied to UTC).
As Muscaat or someone else mentioned, your programming language of choice undoubtedly has some modules/packages/libraries for dealing with ISO 8601 dates. Make sure you use them and you'll be all good.
And now for some hopefully more exciting discussions :) EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
187
|
Posted - 2012.07.11 14:20:00 -
[217] - Quote
Ilyk Halibut wrote:And now for some hopefully more exciting discussions :) I'll drink an ice tea on that. 
|

Schereau Lasomere
University of Caille Gallente Federation
0
|
Posted - 2012.07.11 19:40:00 -
[218] - Quote
Thanks Snarf and Desmont! that clarified things alot.
Desmont McCallock wrote:EMDR is indeed changing [currentTime] (as a forwarder it's allowed to) and its not the same with the 'currentTime' EVEMon generates.
The weird thing is that in the data stream I'm receiving, currentTime keeps jumping back and forth by about a minute:
Quote:currentTime,generatedAt,regionID,typeID,... . . . 2012-07-11T18:40:29+00:00,2012-07-08T20:04:25+00:00,10000002,38,... 2012-07-11T18:41:38+00:00,2012-07-10T20:31:42+00:00,10000042,3436,... . . . 2012-07-11T18:41:38+00:00,2012-07-10T20:31:42+00:00,10000042,3436,... 2012-07-11T18:40:30+00:00,2012-07-11T18:41:04+00:00,10000030,5401,... . . . 2012-07-11T18:40:30+00:00,2012-07-11T18:41:04+00:00,10000030,5401,... 2012-07-11T18:41:39+00:00,2012-07-09T21:12:23+00:00,10000060,1944,... . . . I thought that if EMDR does change the currentTime, then the currentTime would be always increasing, rather than jumping back and forth, when data is downloaded from a single relay. Is the order data passing through two different data processors (PCs) with unsynchronized clocks in EMDR, even though I'm downloading the data from a single relay? The EMD architecture picture in the docs seems to hint at that. Trying to figure out the cause and potential effect of what I'm seeing. |

Desmont McCallock
187
|
Posted - 2012.07.11 19:56:00 -
[219] - Quote
Although it's indeed happening, I wonder why you are so obsessed about it. Are you using the 'currentTime' for something? Could be a side effect of ZMQ queuing but Ilyk is the man with answers to that. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.07.11 21:06:00 -
[220] - Quote
Looks like in my hurry to set up the secondary relay, I forgot to install ntp on it. Whoops. Fixed, the drift will correct over itself. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Schereau Lasomere
University of Caille Gallente Federation
0
|
Posted - 2012.07.11 22:29:00 -
[221] - Quote
Desmont McCallock wrote:Although it's indeed happening, I wonder why you are so obsessed about it. Are you using the 'currentTime' for something? Guess it's mix of curiosity and woriess. I'm not using any of the timestamps yet. I'm still very early in the dev phase. Was trying to figure out which timestamp to use for freshness verification but the EMDR and UUDIF documentation wasn't clear on that in my oppinion.
Guess it's in my nature to find explanations to things that I can't explain to my self.
Since the UUDIF spec doesn't state what source to use for the generatedAt timestamp, I as a potential uploader developer would not know what source to use. Because of that I was worried that some uploaders might use the cache file creation/update time converted to UTC as generatedAt time, which obviously would not be a good idea. That potential problem made me wonder how to do the freshness verification.
|

Muscaat
EVE Markets
12
|
Posted - 2012.07.12 15:05:00 -
[222] - Quote
Desmont McCallock wrote:Ilyk Halibut wrote:And now for some hopefully more exciting discussions :) I'll drink an ice tea on that.  Make mine a hot tea, milk and sugar  |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.07.13 19:27:00 -
[223] - Quote
I have added an 'EMDR' upload key with a hash that uniquely identifies each uploader by IP address. See the mailing list post for more details:
https://groups.google.com/forum/#!topic/eve-emdr/WNiN63KJQ_Q
Hopefully this is useful for some of you to blacklist the troublemakers we'll eventually attract (if we haven't already). EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Dragonaire
Corax. The Big Dirty
45
|
Posted - 2012.07.14 05:03:00 -
[224] - Quote
Just to add my 0.02 ISK in here about the generatedAt time. It could also be the time from the API XML if that was the source so keep that in mind before getting to carried away on expecting it to be able to tell you which of two messages was first down to the second or even much below a few minutes. In the other thread that you posted a link to this one and in there was some back and forth about how to do the time and that why we decided on using ISO 8601 and there is also some clarifying explanation at the bottom of the page in the spec on using the complete time format so as to not have any confusion about if it was in local or another time zone. We all felt it was important not to make mistakes that we had all seen when that wasn't done like with the API data/times without any time zone on them etc. You also wondered about the sync of varies sources etc. There can be problems there because in the case of the cache files it could be dependent on the clock of the user uploading the data being set correctly, I believe the Eve client uses the time it gets from the Eve server so it should be accurate but someone that is more familiar with the cache would have to answer that.
So to kind of sum it up the date/time from a single source should be directly comparable but when coming from multiple sources it would take getting to know where they all come up with the date/time reported in generatedAt and insuring in your application you adjust for any differences. Finds camping stations from the inside much easier. Designer of Yapeal for Eve API. Check out the Yapeal PHP API library thread for more information. |

Desmont McCallock
189
|
Posted - 2012.07.14 08:40:00 -
[225] - Quote
I'm really curious what impact the combination of EMDR/EVEMon had on the EVE economy. Looking forward to see the next 'Price Indices' report. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.07.18 12:50:00 -
[226] - Quote
ShoGun/Baptiste has volunteered a second french relay to complement Jognu's. This works out well, as there has been quite a bit of usage on the european relays. For those of you in Europe, you may now use the new relay for additional redundancy, or as your sole data provider.
tcp://relay-eu-france-2.eve-emdr.com:8050
Thanks to ShoGun for volunteering it. Here is the full list of relays:
http://www.eve-emdr.com/en/latest/access.html
Greg EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Shellac Brookdale
RAZOR Alliance
6
|
Posted - 2012.07.18 19:25:00 -
[227] - Quote
Ilyk, Desmont -- Great work so far!
But can we please have something like this for killmails too? Have EVEmon users auto upload killmails into a separate data relay network and enjoy all kinds of new killmail consuming apps making use of this? Making it easier for killboards to sync kms? That would be huge.
|

Desmont McCallock
193
|
Posted - 2012.07.18 21:03:00 -
[228] - Quote
Looking into the possibility of such a project, I began scanning the cache files (with EVECacheParser) to see if the kill mails info can be retrieved. I discovered that the kill mails are indeed cached under the method 'charMgr.GetRecentShipKillsAndLosses'.
The data that can be retrieved are: killTime, iskLost, killID, solarSystemID, victimCharacterID, victimCorporationID, victimAllianceID, victimFactionID, victimShipTypeID, victimDamageTaken, finalSecurityStatus, finalCharacterID, finalCorporationID, finalAllianceID, finalFactionID, finalShipTypeID, finalDamageDone, moonID, warID, killBlob (which contains info about the attackers and the items dropped).
Now, if we can agree to a unified format much like we did with the market data, I don't see any problems in creating an EKDR (EVE KillReport Data Relay).
Edit: Prerequisite for this to work is that a player has to open the combat log in the character sheet in order for the cache file to be created, much like it works with the market data. |

Shellac Brookdale
RAZOR Alliance
6
|
Posted - 2012.07.18 21:57:00 -
[229] - Quote
Wouldn't retrieving the killmails trough the API be an option for clients to push data? |

Desmont McCallock
193
|
Posted - 2012.07.19 06:56:00 -
[230] - Quote
I thought that you might ask. Killmail API is defected as hell. If you have given to a service (site or client) an API key to retrieve kill mails, you can't retrieve the same info (even with another API key) so to use to another service. Meaning that the killmail API call doesn't return persisting data.
This is also the reason I haven't added a kill mail monitor in EVEMon yet. Those that use any API key to feed a killboard won't be able to use EVEMon (or any other app/service that use the same API call) to monitor the kill mails and vice verse. |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.07.23 15:47:00 -
[231] - Quote
Shellac Brookdale wrote:... But can we please have something like this for killmails too? Have EVEmon users auto upload killmails into a separate data relay network and enjoy all kinds of new killmail consuming apps making use of this? Making it easier for killboards to sync kms? That would be huge. While this would certainly be useful, I am just stretched way too far to undertake it myself. This would need to be a separate entity from EMDR, but a huge chunk of the codebase could be re-used trivially. Basically the only thing that would need changing would be the gateway daemon. Instead of looking for market data, it'd need to use whatever format the uploads come over as.
I'd love to offer advice and pointers for anyone wishing to undertake this, so poke me if you do end up giving it a shot. The EMDR codebase and ZeroMQ are both relatively simple (and BSD-licensed, extremely permissive), and much of the tedious testing and messing with relays/announcers has been done for you (those could both be re-used without modification). An adaptation of EMDR to work as a new service could be done over a weekend of solid effort.
EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.07.23 15:48:00 -
[232] - Quote
EMDR has added relays in Denmark and Holland, courtesy of Karbowiak:
http://www.eve-emdr.com/en/latest/access.html EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Qualla Amborante
Mindelan Heavy Industry
0
|
Posted - 2012.08.03 08:49:00 -
[233] - Quote
The Holland relay does not work, does not accept the connection. Gemany works fine.
Thnx. |

Qualla Amborante
Mindelan Heavy Industry
0
|
Posted - 2012.08.03 10:44:00 -
[234] - Quote
Hello,
Can I tell the feed somehow that I do not want the historical data? If I get all data, and save it, I do also have this history, and save a load of bandwith, or am I mssing something?
Qualla |

Kaladr
Dreddit Test Alliance Please Ignore
36
|
Posted - 2012.08.04 02:47:00 -
[235] - Quote
Desmont McCallock wrote:I thought that you might ask. Killmail API is defected as hell. If you have given to a service (site or client) an API key to retrieve kill mails, you can't retrieve the same info (even with another API key) so to use to another service. Meaning that the killmail API call doesn't return persisting data.
This is also the reason I haven't added a kill mail monitor in EVEMon yet. Those that use any API key to feed a killboard won't be able to use EVEMon (or any other app/service that use the same API call) to monitor the kill mails and vice verse.
I'd love to process the killmail data in the future. However, in many ways, killmails are more of a state syncing problem instead of a pure stream. You can build a whole view of the market by watching the EMDR feed for awhile, but you can't build a whole "view" of killmails. In many ways RSS is a good concept, but it doesn't really scale.
(And to get on the topic of EMDR, EVE-Central is now relaying EMDR data, unofficially at emdr.eve-central.com:8050, and officially once the docs get updated). Creator of EVE-Central.com, the longest running EVE Market Aggregator |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.08.04 19:28:00 -
[236] - Quote
Sorry for the delay, Kaladr's west coast relay is now officially listed here:
http://www.eve-emdr.com/en/latest/access.html EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.08.24 20:01:00 -
[237] - Quote
We're in need of an announcer machine. If you'd like to volunteer one and have a good chunk of bandwidth to spare, please see: https://groups.google.com/forum/?fromgroups=#!topic/eve-emdr/JXMr5iqZGbU EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Vaerah Vahrokha
Vahrokh Consulting
1949
|
Posted - 2012.10.31 08:14:00 -
[238] - Quote
Hello,
I'd like to attach to EMDR and fetch the data but I have a problem: my hosting won't let me install daemons or perma-running processes that can sit listening to sockets and similar. I can only run a cron.
Is there any way I can deal with this restriction and still get data?
I noticed that the peeps at Element43.com seem to be hosted on GoDaddy yet they can process EMDR feeds, so there seems to be a way.
Auditing | Collateral holding and insurance | Consulting | PLEX for Good Charity
Twitter channel |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
9
|
Posted - 2012.11.01 16:49:00 -
[239] - Quote
Vaerah Vahrokha wrote:Hello,
I'd like to attach to EMDR and fetch the data but I have a problem: my hosting won't let me install daemons or perma-running processes that can sit listening to sockets and similar. I can only run a cron.
Is there any way I can deal with this restriction and still get data?
I noticed that the peeps at Element43.com seem to be hosted on GoDaddy yet they can process EMDR feeds, so there seems to be a way.
There's not a great way to do this. Your only hope would be to do some pretty hacky stuff with a long (permanently) running cron entry, but GoDaddy would probably get irate with you.
Element43 isn't on GoDaddy. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Vaerah Vahrokha
Vahrokh Consulting
1953
|
Posted - 2012.11.02 10:55:00 -
[240] - Quote
Ilyk Halibut wrote:Vaerah Vahrokha wrote:Hello,
I'd like to attach to EMDR and fetch the data but I have a problem: my hosting won't let me install daemons or perma-running processes that can sit listening to sockets and similar. I can only run a cron.
Is there any way I can deal with this restriction and still get data?
I noticed that the peeps at Element43.com seem to be hosted on GoDaddy yet they can process EMDR feeds, so there seems to be a way.
There's not a great way to do this. Your only hope would be to do some pretty hacky stuff with a long (permanently) running cron entry, but GoDaddy would probably get irate with you. Element43 isn't on GoDaddy.
Thank you.
I am already invested in a certain web hosting company (no daemon support sadly) for other websites so all the EvE software and websites - I make all for free - are going to be a pure additional expense to me.
Therefore I'd love if you or some other experienced programmer in there could suggest me a cheap hosting service that lets me install such a permanently running application needed to listen to ZeroMQ messages. I have checked Webfaction and Dreamhost but both are expensive for totally free EvE projects. Plus they really push into multi-year subscription purchases and I can't commit to such a budget. All I needed to do is to listen for EMDR messages 24/7 and slap them in a database, I don't even need a web frontend (no I can't do it with a computer at home). Auditing | Collateral holding and insurance | Consulting | PLEX for Good Charity
Twitter channel |

Muscaat
EVE Markets
12
|
Posted - 2012.11.02 12:36:00 -
[241] - Quote
Vaerah Vahrokha wrote:I'd love if you or some other experienced programmer in there could suggest me a cheap hosting service that lets me install such a permanently running application needed to listen to ZeroMQ messages. I have checked Webfaction and Dreamhost but both are expensive for totally free EvE projects. Plus they really push into multi-year subscription purchases and I can't commit to such a budget. All I needed to do is to listen for EMDR messages 24/7 and slap them in a database, I don't even need a web frontend (no I can't do it with a computer at home). I'm in a similar position to you, Vaerah - my host doesn't want persistent processes but I'd like to collect EMDR data. I went for a cheap VPS - there are some really cheap packages around. http://www.lowendbox.com/ is a good place to start looking. We're talking down to about US$3/mo in some cases. Might be worth a try. |

Desmont McCallock
218
|
Posted - 2012.11.02 13:48:00 -
[242] - Quote
Muscaat wrote:I'm in a similar position to you, Vaerah - my host doesn't want persistent processes but I'd like to collect EMDR data. I went for a cheap VPS - there are some really cheap packages around. http://www.lowendbox.com/ is a good place to start looking. We're talking down to about US$3/mo in some cases. Might be worth a try. Good to know you are still around. Have you noticed that your stats page is broken? |

Vaerah Vahrokha
Vahrokh Consulting
1953
|
Posted - 2012.11.02 14:03:00 -
[243] - Quote
Muscaat wrote:Vaerah Vahrokha wrote:I'd love if you or some other experienced programmer in there could suggest me a cheap hosting service that lets me install such a permanently running application needed to listen to ZeroMQ messages. I have checked Webfaction and Dreamhost but both are expensive for totally free EvE projects. Plus they really push into multi-year subscription purchases and I can't commit to such a budget. All I needed to do is to listen for EMDR messages 24/7 and slap them in a database, I don't even need a web frontend (no I can't do it with a computer at home). I'm in a similar position to you, Vaerah - my host doesn't want persistent processes but I'd like to collect EMDR data. I went for a cheap VPS - there are some really cheap packages around. http://www.lowendbox.com/ is a good place to start looking. We're talking down to about US$3/mo in some cases. Might be worth a try.
Thank you, much appreciated! I can shell $3 for something I won't ever get a nickel from, but $12 was a bit too steep (unless going for a lifelong pre-paid plan then it drops to $8). Auditing | Collateral holding and insurance | Consulting | PLEX for Good Charity
Twitter channel |

Muscaat
EVE Markets
12
|
Posted - 2012.11.02 14:32:00 -
[244] - Quote
Desmont McCallock wrote:Good to know you are still around. Have you noticed that your stats page is broken? Which page is this? Site seems fine to me... |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
11
|
Posted - 2012.11.02 15:18:00 -
[245] - Quote
Vaerah Vahrokha wrote:Muscaat wrote:Vaerah Vahrokha wrote:I'd love if you or some other experienced programmer in there could suggest me a cheap hosting service that lets me install such a permanently running application needed to listen to ZeroMQ messages. I have checked Webfaction and Dreamhost but both are expensive for totally free EvE projects. Plus they really push into multi-year subscription purchases and I can't commit to such a budget. All I needed to do is to listen for EMDR messages 24/7 and slap them in a database, I don't even need a web frontend (no I can't do it with a computer at home). I'm in a similar position to you, Vaerah - my host doesn't want persistent processes but I'd like to collect EMDR data. I went for a cheap VPS - there are some really cheap packages around. http://www.lowendbox.com/ is a good place to start looking. We're talking down to about US$3/mo in some cases. Might be worth a try. Thank you, much appreciated! I can shell $3 for something I won't ever get a nickel from, but $12 was a bit too steep (unless going for a lifelong pre-paid plan then it drops to $8).
The thing you'll want to be really careful of is bandwidth limits. A lot of cheaper VPS services will lure you in with a low price, but cut other things like bandwidth. EMDR can suck up a good bit. I don't know what consumption is like for a single consumer these days (someone else feel free to chime in), but if you pay $3/month, only to get $12+ in bandwidth overage fees, you haven't really saved any money.
Also, $12 isn't necessarily what you'd call an expensive VPS :) EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Muscaat
EVE Markets
12
|
Posted - 2012.11.02 16:49:00 -
[246] - Quote
Ilyk Halibut wrote:I don't know what consumption is like for a single consumer these days (someone else feel free to chime in)
I'm looking at about 1GB/week on my consumer (roughly - that figure includes other traffic too). |

Vaerah Vahrokha
Vahrokh Consulting
1953
|
Posted - 2012.11.02 18:18:00 -
[247] - Quote
Ilyk Halibut wrote: The thing you'll want to be really careful of is bandwidth limits. A lot of cheaper VPS services will lure you in with a low price, but cut other things like bandwidth. EMDR can suck up a good bit. I don't know what consumption is like for a single consumer these days (someone else feel free to chime in), but if you pay $3/month, only to get $12+ in bandwidth overage fees, you haven't really saved any money.
Also, $12 isn't necessarily what you'd call an expensive VPS :)
The $8 plan supported 300GB / month so it should be safe enough.
However it's not a VPS, VPS cost a lot more and at this point I find no justification for throwing in from $500 to $1200 a year for something that yields no revenue at all.
As for bandwidth usage, what about providing the ability to pick a family of markets? I am only interested in a small subset yet I'll have both to un-necessarily load a CPU and consume bandwidth to consume all the data and discard 95% of it and even then, only keep Jita prices out of that.
It'd be cool to construct a JSON or something request involving the desired items IDs and regions / stations and just pull the strictly needed data. Auditing | Collateral holding and insurance | Consulting | PLEX for Good Charity
Twitter channel |

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
11
|
Posted - 2012.11.02 19:17:00 -
[248] - Quote
Vaerah Vahrokha wrote: The $8 plan supported 300GB / month so it should be safe enough.
However it's not a VPS, VPS cost a lot more and at this point I find no justification for throwing in from $500 to $1200 a year for something that yields no revenue at all.
Wat? There are plenty of similarly priced VPS solutions in the $10-$20 range. I suggest Rackspace ($16) for those on a budget, but wanting rock solid service. Linode has an awesome plan at $20 if you need a little more beef. You can go cheaper, but often at the expense of quality.
That said, I personally have zero interest in catering to those who can't run daemons. This is a fun hobby for me, and that just doesn't excite me. It'd probably involve writing an API, which is not what EMDR is. It's a dumb stream of data.
Vaerah Vahrokha wrote: It'd be cool to construct a JSON or something request involving the desired items IDs and regions / stations and just pull the strictly needed data.
This is just not how EMDR works. It's not really even a technical possibility without me splicing and dicing feeds and finding relays for a number of differently flavored feeds.
On a related note, I wrote and currently maintain EMDR for fun, and I cater to a happy medium. I spend about $20/month to run EMDR, and I never see a dime back. But that doesn't matter, I enjoy the technical challenge. I think you'll need to ask yourself whether you're viewing this as a hobby (a $10-$20/month hobby is dirt cheap), or a burden that you're trying to cut losses from.
Just don't go out to eat one night a month and you've basically earned your costs back. Maybe skip on that expensive coffee a time or two. EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
218
|
Posted - 2012.11.02 20:16:00 -
[249] - Quote
Muscaat wrote:Desmont McCallock wrote:Good to know you are still around. Have you noticed that your stats page is broken? Which page is this? Site seems fine to me... Actually I have to bug Otaci about that. You both use the same words for your sites but with a twist (and that confused me). |

Muscaat
EVE Markets
12
|
Posted - 2012.11.04 11:27:00 -
[250] - Quote
Desmont McCallock wrote:Muscaat wrote:Desmont McCallock wrote:Good to know you are still around. Have you noticed that your stats page is broken? Which page is this? Site seems fine to me... Actually I have to bug Otaci about that. You both use the same words for your sites but with a twist (and that confused me). Ha, thought it might have been that  |

Gordon Newman
Cha Ching LtD Cha Ching PLC
0
|
Posted - 2012.11.07 15:16:00 -
[251] - Quote
Vaerah Vahrokha wrote: It'd be cool to construct a JSON or something request involving the desired items IDs and regions / stations and just pull the strictly needed data.
What you're looking for is an API to fetch market data for your app. Over at element43 we're at the beginning of writing such an API so you don't have to deal with the hassles of acquiring, filtering and storing market data from EMDR, if all you want to do is just analyzing that data. Feel free to visit our IRC: #element43 at irc.coldfront.net We're always looking for feedback to improve our tool. Alternatively you can just use our consumer code, which you can get over at GitHub. It should run on any decent linux VPS.
Element43 - Your premier source for EVE market data and personal financial analysis. http://element-43.com
|

Ilyk Halibut
Blackwater USA Inc. Against ALL Authorities
11
|
Posted - 2012.11.07 18:47:00 -
[252] - Quote
These Element 43 guys are doing great work. For those needing some "value-added" stuff, get in touch with them like Gordon is saying. They can hook you up, and we're all happy.
Big props for doing this all open source, too! EVE Market Data Relay - A real-time feed of EVE Market data http://www.eve-emdr.com |

Desmont McCallock
262
|
Posted - 2012.12.26 16:19:00 -
[253] - Quote
Presenting EMDR Monitor. |
| |
|
| Pages: 1 2 3 4 5 6 7 8 9 :: [one page] |